<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.2 (Python 3.11.10 on linux)" generated="2026-08-10T02:06:37.456014" 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-08-10T02:06:37.867498" 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-08-10T02:06:37.867184" elapsed="0.000390"/>
</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-08-10T02:06:37.870136" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:37.869874" elapsed="0.000331"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:37.869846" elapsed="0.000388"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:37.870707" 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-08-10T02:06:37.870835" 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-08-10T02:06:37.870390" elapsed="0.000475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:37.871443" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:06:37.871003" elapsed="0.000491"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:37.872034" 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-08-10T02:06:37.871631" elapsed="0.000431"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:06:37.873016" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:06:37.873101" 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-08-10T02:06:37.872615" elapsed="0.000516"/>
</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-08-10T02:06:37.873275" elapsed="0.000375"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:06:37.874475" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:06:38.603816" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:06:38 UTC 2026

  System load:  0.02               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

14 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-806-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-08-10T02:06:37.874134" elapsed="0.729776"/>
</kw>
<msg time="2026-08-10T02:06:38.603984" 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-08-10T02:06:37.873795" elapsed="0.730268"/>
</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-08-10T02:06:37.872265" elapsed="0.731896"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:06:38.604531" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:06:39.793858" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:06:39.794391" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:06:39.794509" 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-08-10T02:06:38.604316" elapsed="1.190253"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:06:39.795084" elapsed="0.000691"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:39.796927" 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-08-10T02:06:39.796146" elapsed="0.001065"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:06:39.797875" elapsed="0.000047"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:06:39.797519" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:39.797437" elapsed="0.000626"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:06:39.798506" elapsed="0.000087"/>
</return>
<status status="PASS" start="2026-08-10T02:06:39.798196" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:39.798154" elapsed="0.000607"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:06:39.798845" 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-08-10T02:06:39.804023" elapsed="0.000824"/>
</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-08-10T02:06:39.805157" elapsed="0.000443"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:06:39.805874" elapsed="0.000223"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:06:39.799647" elapsed="0.006578"/>
</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-08-10T02:06:37.869318" elapsed="1.937168"/>
</kw>
<msg time="2026-08-10T02:06:39.806690" 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-08-10T02:06:37.868679" elapsed="1.938147"/>
</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-08-10T02:06:37.868183" elapsed="1.938831"/>
</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-08-10T02:06:39.809234" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:39.808985" elapsed="0.000305"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:39.808965" elapsed="0.000351"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:39.809633" 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-08-10T02:06:39.809748" 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-08-10T02:06:39.809463" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:39.810286" 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.177" 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-08-10T02:06:39.809898" elapsed="0.000453"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:39.810908" 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-08-10T02:06:39.810482" elapsed="0.000452"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:06:39.811785" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:06:39.811871" 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-08-10T02:06:39.811461" 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-08-10T02:06:39.812022" elapsed="0.000343"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:06:39.813195" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:06:40.178216" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:06:38 UTC 2026

  System load:  0.02               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:06:38 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:06:39.812858" elapsed="0.365463"/>
</kw>
<msg time="2026-08-10T02:06:40.178494" 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-08-10T02:06:39.812505" elapsed="0.366065"/>
</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-08-10T02:06:39.811123" elapsed="0.367568"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:06:40.179060" 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-08-10T02:06:40.211614" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:06:40.211735" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:06:40.211779" 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-08-10T02:06:40.178862" elapsed="0.032939"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:06:40.211941" elapsed="0.000242"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:40.212627" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:40.212327" elapsed="0.000342"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:06:40.212896" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:06:40.212757" elapsed="0.000192"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:40.212728" elapsed="0.000244"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:06:40.213138" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:06:40.213027" elapsed="0.000172"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:40.213011" elapsed="0.000212"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:06:40.213257" 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-08-10T02:06:40.215614" elapsed="0.000325"/>
</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-08-10T02:06:40.216079" elapsed="0.000160"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:06:40.216381" 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-08-10T02:06:40.213575" elapsed="0.002960"/>
</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-08-10T02:06:39.808455" elapsed="0.408191"/>
</kw>
<msg time="2026-08-10T02:06:40.216705" 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-08-10T02:06:39.807855" elapsed="0.408902"/>
</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-08-10T02:06:39.807384" elapsed="0.409459"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:37.867759" elapsed="2.349149"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:40.217699" 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-08-10T02:06:40.217050" elapsed="0.000675"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:06:40.218223" 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-08-10T02:06:40.217881" elapsed="0.000384"/>
</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-08-10T02:06:40.219919" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:06:40.220005" 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-08-10T02:06:40.219639" elapsed="0.000390"/>
</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-08-10T02:06:40.220155" elapsed="0.000335"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:06:40.221267" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:06:40.545484" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:06:38 UTC 2026

  System load:  0.02               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:06:40 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:06:40.220955" elapsed="0.324697"/>
</kw>
<msg time="2026-08-10T02:06:40.545716" 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-08-10T02:06:40.220626" elapsed="0.325149"/>
</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-08-10T02:06:40.219212" elapsed="0.326651"/>
</kw>
<msg time="2026-08-10T02:06:40.545913" 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-08-10T02:06:40.218854" elapsed="0.327107"/>
</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-08-10T02:06:40.218460" elapsed="0.327580"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:06:40.546591" level="INFO">Executing command 'sudo ovs-vsctl set-manager ptcp:6644'.</msg>
<msg time="2026-08-10T02:06:40.639835" 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-08-10T02:06:40.546208" elapsed="0.093770"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:06:40.674690" level="INFO">sudo mn --controller=remote,ip=10.30.170.209 --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-08-10T02:06:40.640285" elapsed="0.034464"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:06:40.925019" level="INFO">[?2004l*** Creating network
*** Adding controller
Connecting to remote controller at 10.30.170.209: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-08-10T02:06:40.674890" elapsed="0.250205"/>
</kw>
<doc>Basic setup/cleanup work that can be done safely before any system
is run.</doc>
<status status="PASS" start="2026-08-10T02:06:37.865972" elapsed="3.059195"/>
</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-08-10T02:06:40.961028" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ee4d4050&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-08-10T02:06:40.960669" elapsed="0.000599"/>
</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-08-10T02:06:42.363864" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:06:42.366599" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01v6rd04l78zzq61tjcnowf6re0.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:06:42 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":60116,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:06:42.367254" 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-08-10T02:06:40.968607" elapsed="1.398715"/>
</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-08-10T02:06:42.368473" elapsed="0.000066"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:42.367616" elapsed="0.000997"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.373762" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":60116,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-08-10T02:06:41.514Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"3e:bb:48:8e:c9:8b","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":"5","received":"5"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":846000000},"bytes":{"transmitted":"436","received":"436"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:b4:b6:d7:90:da","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":"5","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":846000000},"bytes":{"transmitted":"436","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:8d:1e:63:a5:b6","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":"5","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":846000000},"bytes":{"transmitted":"436","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"62:4e:11:e7:04: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":840000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:41.817Z"}},{"id":"openflow:1","flow-node-inventory:port-number":60110,"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":"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-08-10T02:06:41.514Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"7a:85:ae:12:45:7d","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":"5","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":860000000},"bytes":{"transmitted":"436","received":"346"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:af:cd:4d:81: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":856000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a6:a4:85:3b:b2:15","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":"5","received":"5"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":860000000},"bytes":{"transmitted":"436","received":"436"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:41.817Z"}},{"id":"openflow:2","flow-node-inventory:port-number":60124,"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":"5","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-08-10T02:06:41.515Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ee:ce:11:cf:e9:23","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":"5"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":863000000},"bytes":{"transmitted":"346","received":"436"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"32:17:f5:f1:e1:4b","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":857000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"96:5b:76:85:4e:db","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":865000000},"bytes":{"transmitted":"346","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:40:b1:e1:c2:2b","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":"5","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":862000000},"bytes":{"transmitted":"436","received":"266"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:41.817Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:42.369012" elapsed="0.006246"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:42.368678" elapsed="0.006635"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:42.367548" elapsed="0.007823"/>
</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-08-10T02:06:42.375553" elapsed="0.000297"/>
</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-08-10T02:06:42.376411" elapsed="0.003778"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-08-10T02:06:42.376187" 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-08-10T02:06:42.380594" elapsed="0.003394"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-08-10T02:06:42.380422" elapsed="0.003608"/>
</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-08-10T02:06:42.384240" elapsed="0.002479"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-08-10T02:06:42.384119" elapsed="0.002656"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:42.375948" elapsed="0.010861"/>
</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-08-10T02:06:40.968178" elapsed="1.418697"/>
</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-08-10T02:06:40.961801" elapsed="1.425126"/>
</kw>
<doc>Get the inventory</doc>
<status status="PASS" start="2026-08-10T02:06:40.961365" elapsed="1.425708"/>
</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-08-10T02:06:42.427319" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:42.428666" level="INFO">GET Response : url=http://10.30.170.209: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":60116,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:06:42.429256" 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-08-10T02:06:42.397521" elapsed="0.031801"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.435233" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":60116,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-08-10T02:06:41.514Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"3e:bb:48:8e:c9:8b","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":"5","received":"5"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":846000000},"bytes":{"transmitted":"436","received":"436"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:b4:b6:d7:90:da","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":"5","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":846000000},"bytes":{"transmitted":"436","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:8d:1e:63:a5:b6","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":"5","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":846000000},"bytes":{"transmitted":"436","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"62:4e:11:e7:04: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":840000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:41.817Z"}},{"id":"openflow:1","flow-node-inventory:port-number":60110,"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":"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-08-10T02:06:41.514Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"7a:85:ae:12:45:7d","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":"5","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":860000000},"bytes":{"transmitted":"436","received":"346"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:af:cd:4d:81: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":856000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a6:a4:85:3b:b2:15","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":"5","received":"5"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":860000000},"bytes":{"transmitted":"436","received":"436"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:41.817Z"}},{"id":"openflow:2","flow-node-inventory:port-number":60124,"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":"5","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-08-10T02:06:41.515Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ee:ce:11:cf:e9:23","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":"5"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":863000000},"bytes":{"transmitted":"346","received":"436"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"32:17:f5:f1:e1:4b","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":857000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"96:5b:76:85:4e:db","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":865000000},"bytes":{"transmitted":"346","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:40:b1:e1:c2:2b","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":"5","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":862000000},"bytes":{"transmitted":"436","received":"266"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:41.817Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:42.429704" elapsed="0.007110"/>
</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-08-10T02:06:42.437006" elapsed="0.000239"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.441044" 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-08-10T02:06:42.437485" elapsed="0.004216"/>
</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-08-10T02:06:42.397115" elapsed="0.044679"/>
</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-08-10T02:06:42.387983" elapsed="0.053885"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.443606" 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-08-10T02:06:42.442887" elapsed="0.000761"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-08-10T02:06:42.443980" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-08-10T02:06:42.443761" elapsed="0.000326"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:42.443732" elapsed="0.000388"/>
</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-08-10T02:06:42.444309" elapsed="0.000054"/>
</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-08-10T02:06:42.444557" elapsed="0.000032"/>
</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-08-10T02:06:42.444784" 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-08-10T02:06:42.444984" 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-08-10T02:06:42.445172" elapsed="0.000027"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-08-10T02:06:42.445381" elapsed="0.000029"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:06:42.445569" 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-08-10T02:06:42.445872" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:42.445697" elapsed="0.000246"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:06:42.445671" elapsed="0.000304"/>
</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-08-10T02:06:42.442390" elapsed="0.003655"/>
</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-08-10T02:06:42.387440" elapsed="0.058669"/>
</test>
<test id="s1-s1-s1-t3" name="Get node 1 inventory" line="50">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.447714" 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-08-10T02:06:42.447126" elapsed="0.000617"/>
</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-08-10T02:06:42.471470" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:42.472499" level="INFO">GET Response : url=http://10.30.170.209: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":60110,"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":"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-tab... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:06:42.472992" 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-08-10T02:06:42.454913" elapsed="0.018140"/>
</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-08-10T02:06:42.473904" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:42.473230" elapsed="0.000801"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.479557" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":60110,"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":"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-08-10T02:06:41.514Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"7a:85:ae:12:45:7d","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":"5","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":860000000},"bytes":{"transmitted":"436","received":"346"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:af:cd:4d:81: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":856000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a6:a4:85:3b:b2:15","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":"5","received":"5"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":860000000},"bytes":{"transmitted":"436","received":"436"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:41.817Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:42.474384" elapsed="0.005726"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:42.474085" elapsed="0.006078"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:42.473188" elapsed="0.007008"/>
</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-08-10T02:06:42.480398" elapsed="0.000251"/>
</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-08-10T02:06:42.481114" elapsed="0.003601"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.480938" 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-08-10T02:06:42.485080" elapsed="0.003582"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.484907" 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-08-10T02:06:42.489019" elapsed="0.003169"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.488847" elapsed="0.003382"/>
</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-08-10T02:06:42.492453" elapsed="0.002381"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.492314" 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-08-10T02:06:42.495078" elapsed="0.002392"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-08-10T02:06:42.494961" 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-08-10T02:06:42.497716" elapsed="0.002371"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.177"</var>
<status status="PASS" start="2026-08-10T02:06:42.497594" elapsed="0.002533"/>
</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-08-10T02:06:42.500322" elapsed="0.002382"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-08-10T02:06:42.500207" elapsed="0.002536"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:06:42.502971" elapsed="0.002382"/>
</kw>
<var name="${i}">openflow:1:1</var>
<status status="PASS" start="2026-08-10T02:06:42.502855" 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-08-10T02:06:42.505598" elapsed="0.002365"/>
</kw>
<var name="${i}">openflow:1:2</var>
<status status="PASS" start="2026-08-10T02:06:42.505482" elapsed="0.002520"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:42.480732" elapsed="0.027300"/>
</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-08-10T02:06:42.454392" elapsed="0.053696"/>
</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-08-10T02:06:42.447904" elapsed="0.060234"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-08-10T02:06:42.446500" elapsed="0.061753"/>
</test>
<test id="s1-s1-s1-t4" name="Get node 2 inventory" line="61">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.509411" 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-08-10T02:06:42.508963" elapsed="0.000476"/>
</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-08-10T02:06:42.533112" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:42.534194" level="INFO">GET Response : url=http://10.30.170.209: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":60124,"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":"5","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-tab... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:06:42.534699" 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-08-10T02:06:42.516267" elapsed="0.018608"/>
</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-08-10T02:06:42.535625" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:42.535088" elapsed="0.000621"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.539672" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":60124,"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":"5","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-08-10T02:06:41.515Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ee:ce:11:cf:e9:23","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":"5"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":863000000},"bytes":{"transmitted":"346","received":"436"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"32:17:f5:f1:e1:4b","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":857000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"96:5b:76:85:4e:db","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":865000000},"bytes":{"transmitted":"346","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:40:b1:e1:c2:2b","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":"5","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":862000000},"bytes":{"transmitted":"436","received":"266"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:41.817Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:42.535924" elapsed="0.004306"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:42.535745" elapsed="0.004540"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:42.535042" elapsed="0.005277"/>
</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-08-10T02:06:42.540541" elapsed="0.000250"/>
</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-08-10T02:06:42.541238" elapsed="0.003174"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.541066" elapsed="0.003387"/>
</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-08-10T02:06:42.544651" elapsed="0.002393"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.544535" 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-08-10T02:06:42.547280" elapsed="0.002404"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.547165" elapsed="0.002560"/>
</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-08-10T02:06:42.549923" elapsed="0.002381"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.549806" elapsed="0.002554"/>
</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-08-10T02:06:42.552562" elapsed="0.002382"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-08-10T02:06:42.552443" elapsed="0.002542"/>
</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-08-10T02:06:42.555180" elapsed="0.002381"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.177"</var>
<status status="PASS" start="2026-08-10T02:06:42.555065" elapsed="0.002536"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:06:42.557797" elapsed="0.002391"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-08-10T02:06:42.557682" elapsed="0.002546"/>
</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-08-10T02:06:42.560442" elapsed="0.008001"/>
</kw>
<var name="${i}">openflow:2:1</var>
<status status="PASS" start="2026-08-10T02:06:42.560308" elapsed="0.008177"/>
</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-08-10T02:06:42.568685" elapsed="0.002413"/>
</kw>
<var name="${i}">openflow:2:2</var>
<status status="PASS" start="2026-08-10T02:06:42.568567" 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-08-10T02:06:42.571356" elapsed="0.002374"/>
</kw>
<var name="${i}">openflow:2:3</var>
<status status="PASS" start="2026-08-10T02:06:42.571219" elapsed="0.002552"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:42.540872" elapsed="0.032928"/>
</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-08-10T02:06:42.515781" elapsed="0.058078"/>
</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-08-10T02:06:42.509607" elapsed="0.064302"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-08-10T02:06:42.508563" elapsed="0.065461"/>
</test>
<test id="s1-s1-s1-t5" name="Get node 3 inventory" line="72">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.575375" 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-08-10T02:06:42.574926" elapsed="0.000479"/>
</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-08-10T02:06:42.596204" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:42.597162" level="INFO">GET Response : url=http://10.30.170.209: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":60116,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-tab... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:06:42.597676" 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-08-10T02:06:42.582133" elapsed="0.015603"/>
</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-08-10T02:06:42.598580" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:42.597913" elapsed="0.000794"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.604291" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":60116,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-08-10T02:06:41.514Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"3e:bb:48:8e:c9:8b","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":"5","received":"5"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":846000000},"bytes":{"transmitted":"436","received":"436"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:b4:b6:d7:90:da","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":"5","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":846000000},"bytes":{"transmitted":"436","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:8d:1e:63:a5:b6","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":"5","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":846000000},"bytes":{"transmitted":"436","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"62:4e:11:e7:04: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":840000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:41.817Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:42.599061" elapsed="0.006100"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:42.598790" elapsed="0.006453"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:42.597871" elapsed="0.007420"/>
</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-08-10T02:06:42.605592" elapsed="0.000366"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:06:42.606664" elapsed="0.002957"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.606407" elapsed="0.003255"/>
</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-08-10T02:06:42.609862" elapsed="0.002382"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.609744" elapsed="0.002541"/>
</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-08-10T02:06:42.612506" elapsed="0.002393"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.612389" elapsed="0.002551"/>
</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-08-10T02:06:42.615142" elapsed="0.002405"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-08-10T02:06:42.615021" elapsed="0.002567"/>
</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-08-10T02:06:42.617785" elapsed="0.002434"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-08-10T02:06:42.617669" elapsed="0.002592"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:06:42.620476" elapsed="0.002374"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.177"</var>
<status status="PASS" start="2026-08-10T02:06:42.620358" elapsed="0.002534"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:06:42.623089" elapsed="0.002371"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-08-10T02:06:42.622973" elapsed="0.002527"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:06:42.625697" elapsed="0.002364"/>
</kw>
<var name="${i}">openflow:3:1</var>
<status status="PASS" start="2026-08-10T02:06:42.625580" elapsed="0.002521"/>
</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-08-10T02:06:42.628303" elapsed="0.002425"/>
</kw>
<var name="${i}">openflow:3:2</var>
<status status="PASS" start="2026-08-10T02:06:42.628187" elapsed="0.002611"/>
</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-08-10T02:06:42.630996" elapsed="0.002385"/>
</kw>
<var name="${i}">openflow:3:3</var>
<status status="PASS" start="2026-08-10T02:06:42.630880" elapsed="0.002541"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:42.606081" elapsed="0.027370"/>
</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-08-10T02:06:42.581650" elapsed="0.051856"/>
</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-08-10T02:06:42.575569" elapsed="0.057987"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-08-10T02:06:42.574476" elapsed="0.059194"/>
</test>
<test id="s1-s1-s1-t6" name="Link Down" line="83">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:06:42.636266" 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-08-10T02:06:42.634254" elapsed="0.002067"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:06:42.639033" 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-08-10T02:06:42.636481" elapsed="0.002607"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.639529" 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-08-10T02:06:42.639225" elapsed="0.000331"/>
</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-08-10T02:06:42.655780" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:42.655974" level="INFO">GET Response : url=http://10.30.170.209: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":"7a:85:ae:12:45:7d","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-08-10T02:06:42.656107" 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-08-10T02:06:42.646311" elapsed="0.009823"/>
</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-08-10T02:06:42.656637" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:42.656213" elapsed="0.000507"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.660007" 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":"7a:85:ae:12:45:7d","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-08-10T02:06:42.656930" elapsed="0.003151"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:42.656755" elapsed="0.003378"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:42.656194" elapsed="0.003970"/>
</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-08-10T02:06:42.660360" elapsed="0.000245"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:06:42.664546" 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":"7a:85:ae:12:45:7d","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-08-10T02:06:42.661049" elapsed="0.003723">'{"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":"7a:85:ae:12:45:7d","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-08-10T02:06:42.660879" elapsed="0.004015">'{"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":"7a:85:ae:12:45:7d","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-08-10T02:06:42.660686" elapsed="0.004301">'{"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":"7a:85:ae:12:45:7d","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-08-10T02:06:42.645825" elapsed="0.019319">'{"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":"7a:85:ae:12:45:7d","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-08-10T02:06:44.685524" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:44.685823" level="INFO">GET Response : url=http://10.30.170.209: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":"7a:85:ae:12:45:7d","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-08-10T02:06:44.685947" 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-08-10T02:06:44.677637" elapsed="0.008338"/>
</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-08-10T02:06:44.686542" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:44.686156" elapsed="0.000460"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:44.689741" 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":"7a:85:ae:12:45:7d","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-08-10T02:06:44.686783" elapsed="0.003033"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:44.686645" elapsed="0.003220"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:44.686129" elapsed="0.003768"/>
</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-08-10T02:06:44.690069" elapsed="0.000249"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:06:44.690850" elapsed="0.003037"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-08-10T02:06:44.690665" elapsed="0.003279"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:44.690439" elapsed="0.003551"/>
</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-08-10T02:06:44.676692" elapsed="0.017379"/>
</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-08-10T02:06:42.639701" elapsed="2.054440"/>
</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-08-10T02:06:44.708502" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:44.708713" level="INFO">GET Response : url=http://10.30.170.209: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":"ee:ce:11:cf:e9:23","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-08-10T02:06:44.708815" 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-08-10T02:06:44.701418" elapsed="0.007423"/>
</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-08-10T02:06:44.709214" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:44.708919" elapsed="0.000351"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:44.711546" 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":"ee:ce:11:cf:e9:23","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-08-10T02:06:44.709439" elapsed="0.002158"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:44.709294" elapsed="0.002338"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:44.708900" elapsed="0.002753"/>
</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-08-10T02:06:44.711770" elapsed="0.000167"/>
</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-08-10T02:06:44.712236" elapsed="0.002315"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-08-10T02:06:44.712120" elapsed="0.002472"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:44.711991" elapsed="0.002631"/>
</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-08-10T02:06:44.700906" elapsed="0.013770"/>
</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-08-10T02:06:44.694392" elapsed="0.020333"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-08-10T02:06:42.633920" elapsed="2.080939"/>
</test>
<test id="s1-s1-s1-t7" name="Link Up" line="101">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:06:44.718135" 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-08-10T02:06:44.715530" elapsed="0.002682"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:06:44.722807" 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-08-10T02:06:44.718474" elapsed="0.004409"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:06:44.723564" 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-08-10T02:06:44.723115" elapsed="0.000482"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:06:44.736501" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:44.736695" level="INFO">GET Response : url=http://10.30.170.209: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":"7a:85:ae:12:45:7d","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-08-10T02:06:44.736793" 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-08-10T02:06:44.730361" elapsed="0.006458"/>
</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-08-10T02:06:44.737180" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:44.736898" elapsed="0.000338"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:44.739463" 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":"7a:85:ae:12:45:7d","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-08-10T02:06:44.737397" elapsed="0.002117"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:44.737260" elapsed="0.002289"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:44.736879" elapsed="0.002691"/>
</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-08-10T02:06:44.739688" elapsed="0.000162"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:06:44.742353" 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":"PORT-DOWN","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"7a:85:ae:12:45:7d","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}}]}' does not contain '"link-down":false'</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-08-10T02:06:44.740154" elapsed="0.002297">'{"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":"7a:85:ae:12:45:7d","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}}]}' does not contain '"link-down":false'</status>
</kw>
<var name="${i}">"link-down":false</var>
<status status="FAIL" start="2026-08-10T02:06:44.740039" elapsed="0.002492">'{"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":"7a:85:ae:12:45:7d","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}}]}' does not contain '"link-down":false'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-08-10T02:06:44.739909" elapsed="0.002684">'{"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":"7a:85:ae:12:45:7d","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}}]}' does not contain '"link-down":false'</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-08-10T02:06:44.729857" elapsed="0.012841">'{"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":"7a:85:ae:12:45:7d","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}}]}' does not contain '"link-down":false'</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:06:46.765818" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:46.766498" level="INFO">GET Response : url=http://10.30.170.209: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': '1006'} 
 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":"7a:85:ae:12:45:7d","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":"7","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":935000000},"bytes":{"transmitted":"611","received":"951"},"receive-crc-error":"0"}}]} 
 </msg>
<msg time="2026-08-10T02:06:46.766758" 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-08-10T02:06:46.754720" elapsed="0.012099"/>
</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-08-10T02:06:46.775250" elapsed="0.000082"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:46.767017" elapsed="0.008441"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.780694" 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":"7a:85:ae:12:45:7d","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":"7","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":935000000},"bytes":{"transmitted":"611","received":"951"},"receive-crc-error":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:46.775862" elapsed="0.004890"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:46.775534" elapsed="0.005255"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:46.766970" elapsed="0.013841"/>
</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-08-10T02:06:46.780933" 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-08-10T02:06:46.781482" elapsed="0.002247"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-08-10T02:06:46.781327" elapsed="0.002444"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:46.781172" elapsed="0.002632"/>
</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-08-10T02:06:46.753860" elapsed="0.030003"/>
</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-08-10T02:06:44.723759" elapsed="2.060154"/>
</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-08-10T02:06:46.799212" level="INFO">GET Request : url=http://10.30.170.209: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=node01v6rd04l78zzq61tjcnowf6re0.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:46.799491" level="INFO">GET Response : url=http://10.30.170.209: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': '1006'} 
 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":"ee:ce:11:cf:e9:23","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":"11","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":923000000},"bytes":{"transmitted":"951","received":"611"},"receive-crc-error":"0"}}]} 
 </msg>
<msg time="2026-08-10T02:06:46.799603" 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-08-10T02:06:46.791287" elapsed="0.008351"/>
</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-08-10T02:06:46.800651" elapsed="0.000061"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:46.799837" elapsed="0.000946"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.805943" 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":"ee:ce:11:cf:e9:23","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":"11","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":923000000},"bytes":{"transmitted":"951","received":"611"},"receive-crc-error":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:46.801111" elapsed="0.004952"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:46.800837" elapsed="0.005303"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:46.799789" elapsed="0.006399"/>
</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-08-10T02:06:46.806488" elapsed="0.000368"/>
</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-08-10T02:06:46.807572" elapsed="0.004568"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-08-10T02:06:46.807277" elapsed="0.004905"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:46.806974" elapsed="0.005238"/>
</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-08-10T02:06:46.790697" elapsed="0.021568"/>
</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-08-10T02:06:46.784079" elapsed="0.028236"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-08-10T02:06:44.715111" elapsed="2.097355"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:06:46.813140" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:06:46.813051" elapsed="0.000165"/>
</kw>
<doc>Test suite for RESTCONF inventory</doc>
<status status="PASS" start="2026-08-10T02:06:40.925249" elapsed="5.888001"/>
</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-08-10T02:06:46.846777" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/json'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ecb7d890&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-08-10T02:06:46.846442" elapsed="0.000499"/>
</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-08-10T02:06:46.866051" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:06:46.866602" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01cidnne8l6hg8g9mrsiez9tmh1.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:06:46 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3294'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:06:46.866977" 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-08-10T02:06:46.853910" elapsed="0.013129"/>
</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-08-10T02:06:46.867971" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:46.867283" elapsed="0.000815"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.873859" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:46.868469" elapsed="0.005546"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:46.868153" elapsed="0.005941"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:46.867234" elapsed="0.006910"/>
</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-08-10T02:06:46.874444" elapsed="0.000370"/>
</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-08-10T02:06:46.875572" elapsed="0.002425"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-08-10T02:06:46.875276" elapsed="0.002762"/>
</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-08-10T02:06:46.878238" elapsed="0.002327"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-08-10T02:06:46.878120" elapsed="0.002485"/>
</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-08-10T02:06:46.880802" elapsed="0.002304"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-08-10T02:06:46.880687" elapsed="0.002463"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:46.874938" elapsed="0.008242"/>
</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-08-10T02:06:46.853518" elapsed="0.029717"/>
</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-08-10T02:06:46.847521" elapsed="0.035763"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:06:46.890574" level="INFO">GET Request : url=http://10.30.170.209: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=node01cidnne8l6hg8g9mrsiez9tmh1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:46.891672" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3294'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:06:46.892024" 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-08-10T02:06:46.883436" elapsed="0.008648"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.896832" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:46.892444" elapsed="0.004492"/>
</kw>
<doc>Get RESTCONF Topology and validate the result.</doc>
<status status="PASS" start="2026-08-10T02:06:46.847019" elapsed="0.050083"/>
</test>
<test id="s1-s1-s2-t2" name="List all the links" line="31">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.898620" 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-08-10T02:06:46.898103" elapsed="0.000559"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.899385" 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-08-10T02:06:46.898882" elapsed="0.000544"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.900234" 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-08-10T02:06:46.899642" elapsed="0.000633"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.901008" 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-08-10T02:06:46.900533" elapsed="0.000538"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.901761" 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-08-10T02:06:46.901278" elapsed="0.000521"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.902480" 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-08-10T02:06:46.902011" elapsed="0.000507"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.903377" 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-08-10T02:06:46.902728" elapsed="0.000690"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.903940" 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-08-10T02:06:46.903631" elapsed="0.000351"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.904439" 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-08-10T02:06:46.904120" elapsed="0.000345"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.904954" 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-08-10T02:06:46.904647" elapsed="0.000333"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.905533" 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-08-10T02:06:46.905124" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.906012" 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-08-10T02:06:46.905707" elapsed="0.000346"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.906512" 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-08-10T02:06:46.906192" elapsed="0.000346"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.906972" 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-08-10T02:06:46.906680" elapsed="0.000318"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.907568" 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-08-10T02:06:46.907159" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.908051" 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-08-10T02:06:46.907745" elapsed="0.000347"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.908626" 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-08-10T02:06:46.908227" elapsed="0.000426"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:06:46.918947" level="INFO">GET Request : url=http://10.30.170.209: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=node01cidnne8l6hg8g9mrsiez9tmh1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:46.919412" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-08-10T02:06:46.919531" 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-08-10T02:06:46.909618" elapsed="0.009940"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.921995" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:46.919742" elapsed="0.002321"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.925781" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-08-10T02:06:46.925037" elapsed="0.000786"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-08-10T02:06:46.925906" elapsed="0.000061"/>
</return>
<msg time="2026-08-10T02:06:46.926217" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-08-10T02:06:46.922253" elapsed="0.004002"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.926909" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:46.926485" elapsed="0.000523"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:06:46.927646" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-08-10T02:06:46.927286" elapsed="0.000400"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-08-10T02:06:46.928241" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:06:46.927894" elapsed="0.000387"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:06:46.928788" 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-08-10T02:06:46.928508" elapsed="0.000319"/>
</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-08-10T02:06:46.929280" elapsed="0.000502"/>
</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-08-10T02:06:46.929111" elapsed="0.000729"/>
</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-08-10T02:06:46.930387" elapsed="0.000472"/>
</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-08-10T02:06:46.929976" elapsed="0.000940"/>
</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-08-10T02:06:46.931254" elapsed="0.000472"/>
</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-08-10T02:06:46.931048" elapsed="0.000717"/>
</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-08-10T02:06:46.931974" 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-08-10T02:06:46.931854" elapsed="0.000469"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-08-10T02:06:46.928905" elapsed="0.003472"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-08-10T02:06:46.909304" elapsed="0.023129"/>
</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-08-10T02:06:46.908804" elapsed="0.023672"/>
</kw>
<doc>List all the links in the topology.</doc>
<status status="PASS" start="2026-08-10T02:06:46.897495" elapsed="0.035090"/>
</test>
<test id="s1-s1-s2-t3" name="Link Down" line="52">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:06:46.936118" 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-08-10T02:06:46.933324" elapsed="0.002854"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:06:46.942373" 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-08-10T02:06:46.936320" elapsed="0.006111"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.942901" 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-08-10T02:06:46.942569" elapsed="0.000359"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:06:46.954888" level="INFO">GET Request : url=http://10.30.170.209: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=node01cidnne8l6hg8g9mrsiez9tmh1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:46.955553" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-08-10T02:06:46.955838" 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-08-10T02:06:46.943888" elapsed="0.012013"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.961402" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:46.956225" elapsed="0.005333"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.968109" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-08-10T02:06:46.967312" elapsed="0.000826"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-08-10T02:06:46.968188" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:06:46.968405" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-08-10T02:06:46.961970" elapsed="0.006463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:46.968859" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:46.968574" elapsed="0.000384"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:06:46.969313" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-08-10T02:06:46.969094" elapsed="0.000265"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-08-10T02:06:46.969722" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:06:46.969503" elapsed="0.000246"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:06:46.970069" 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-08-10T02:06:46.969884" elapsed="0.000211"/>
</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-08-10T02:06:46.970413" elapsed="0.000325"/>
</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-08-10T02:06:46.970283" elapsed="0.000494"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:06:46.970980" elapsed="0.000323"/>
</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-08-10T02:06:46.970868" elapsed="0.000491"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-08-10T02:06:46.970145" elapsed="0.001246"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-08-10T02:06:46.943596" elapsed="0.027849"/>
</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-08-10T02:06:46.943094" elapsed="0.028393"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:06:47.029122" 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-08-10T02:06:46.971628" elapsed="0.057832"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:06:47.051810" level="INFO">_uuid               : d91f8c97-f867-4c09-a886-b0bb19b65ff9
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         : 3
link_speed          : 10000000000
link_state          : down
lldp                : {}
mac                 : []
mac_in_use          : "7a:85:ae:12:45:7d"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=1037, 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=12, tx_bytes=787, tx_dropped=0, tx_errors=0, tx_packets=9}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-08-10T02:06:47.051987" level="INFO">${output} = _uuid               : d91f8c97-f867-4c09-a886-b0bb19b65ff9
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-08-10T02:06:47.030060" elapsed="0.021957"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:47.052597" level="INFO">_uuid               : d91f8c97-f867-4c09-a886-b0bb19b65ff9
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         : 3
link_speed          : 10000000000
link_state          : down
lldp                : {}
mac                 : []
mac_in_use          : "7a:85:ae:12:45:7d"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=1037, 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=12, tx_bytes=787, tx_dropped=0, tx_errors=0, tx_packets=9}
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-08-10T02:06:47.052178" elapsed="0.000480"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:06:47.054820" 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-08-10T02:06:47.052797" elapsed="0.002079"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:06:47.075549" level="INFO">_uuid               : aa47fcb4-5383-435d-b2df-9c0719f8fa32
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          : "a6:a4:85:3b:b2:15"
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-08-10T02:06:47.075783" level="INFO">${output} = _uuid               : aa47fcb4-5383-435d-b2df-9c0719f8fa32
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-08-10T02:06:47.055017" elapsed="0.020795"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:47.076248" level="INFO">_uuid               : aa47fcb4-5383-435d-b2df-9c0719f8fa32
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          : "a6:a4:85:3b:b2:15"
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-08-10T02:06:47.075971" elapsed="0.000335"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-08-10T02:06:46.932822" elapsed="0.143648"/>
</test>
<test id="s1-s1-s2-t4" name="Link Up" line="69">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:06:47.078928" 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-08-10T02:06:47.077505" elapsed="0.001481"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:06:47.093844" 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-08-10T02:06:47.079143" elapsed="0.014761"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:06:47.094492" 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-08-10T02:06:47.094049" elapsed="0.000472"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:06:47.103482" level="INFO">GET Request : url=http://10.30.170.209: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=node01cidnne8l6hg8g9mrsiez9tmh1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:47.104192" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '2812'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-08-10T02:06:47.104407" 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-08-10T02:06:47.096163" elapsed="0.008284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:47.113732" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:47.104654" elapsed="0.009444"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:06:47.121758" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-08-10T02:06:47.120489" elapsed="0.001336"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-08-10T02:06:47.121944" elapsed="0.000098"/>
</return>
<msg time="2026-08-10T02:06:47.122456" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-08-10T02:06:47.114811" elapsed="0.007708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:47.123864" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:47.122836" elapsed="0.001141"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:06:47.124370" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-08-10T02:06:47.124124" elapsed="0.000275"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-08-10T02:06:47.124774" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:06:47.124544" elapsed="0.000257"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:06:47.125123" 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-08-10T02:06:47.124938" elapsed="0.000212"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:06:47.126007" 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-08-10T02:06:47.125559" elapsed="0.000566">'[{'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-08-10T02:06:47.125431" elapsed="0.000779">'[{'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-08-10T02:06:47.125223" elapsed="0.001091">'[{'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-08-10T02:06:47.095802" elapsed="0.030650">'[{'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-08-10T02:06:49.141095" level="INFO">GET Request : url=http://10.30.170.209: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=node01cidnne8l6hg8g9mrsiez9tmh1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:49.142264" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-08-10T02:06:49.142615" 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-08-10T02:06:49.128601" elapsed="0.014081"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:49.148436" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:49.143099" elapsed="0.005500"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:06:49.152893" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-08-10T02:06:49.152160" elapsed="0.000775"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-08-10T02:06:49.153010" elapsed="0.000057"/>
</return>
<msg time="2026-08-10T02:06:49.153305" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-08-10T02:06:49.148888" elapsed="0.004478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:49.153963" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:49.153560" elapsed="0.000498"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:06:49.154584" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-08-10T02:06:49.154251" elapsed="0.000373"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-08-10T02:06:49.155133" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:06:49.154819" elapsed="0.000353"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:06:49.155690" 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-08-10T02:06:49.155418" elapsed="0.000310"/>
</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-08-10T02:06:49.156179" elapsed="0.000492"/>
</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-08-10T02:06:49.156018" elapsed="0.000708"/>
</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-08-10T02:06:49.157024" elapsed="0.002832"/>
</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-08-10T02:06:49.156858" elapsed="0.003074"/>
</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-08-10T02:06:49.160151" elapsed="0.000356"/>
</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-08-10T02:06:49.160032" elapsed="0.000516"/>
</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-08-10T02:06:49.160786" elapsed="0.000315"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</var>
<status status="PASS" start="2026-08-10T02:06:49.160670" elapsed="0.000470"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-08-10T02:06:49.155809" elapsed="0.005361"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-08-10T02:06:49.127470" elapsed="0.033754"/>
</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-08-10T02:06:47.094692" elapsed="2.066578"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-08-10T02:06:47.076977" elapsed="2.084442"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:06:49.162142" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:06:49.162061" elapsed="0.000155"/>
</kw>
<doc>Test suite for RESTCONF Topology</doc>
<status status="PASS" start="2026-08-10T02:06:46.813911" elapsed="2.348337"/>
</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-08-10T02:06:49.197129" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ecbadc90&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-08-10T02:06:49.196766" elapsed="0.000545"/>
</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-08-10T02:06:49.232022" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:06:49.233273" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01082zymril8hm344qsdljv2ye2.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:06:49 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":60116,"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":"21","active-flows":1,"packets-matched":"15"},"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":"15","byte-count":"1215","duration":{"second":6,"nanosecond":212000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:49.233819" 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-08-10T02:06:49.204980" elapsed="0.028901"/>
</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-08-10T02:06:49.234875" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:49.234112" elapsed="0.000893"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:49.240828" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":60116,"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":"21","active-flows":1,"packets-matched":"15"},"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":"15","byte-count":"1215","duration":{"second":6,"nanosecond":212000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:47.822Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"3e:bb:48:8e:c9:8b","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":"10","received":"10"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":954000000},"bytes":{"transmitted":"841","received":"841"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:b4:b6:d7:90:da","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":"10","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":954000000},"bytes":{"transmitted":"841","received":"586"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:8d:1e:63:a5:b6","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":"10","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":954000000},"bytes":{"transmitted":"841","received":"586"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"62:4e:11:e7:04: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":6,"nanosecond":948000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:47.875Z"}},{"id":"openflow:1","flow-node-inventory:port-number":60110,"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":"28","active-flows":1,"packets-matched":"26"},"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":"26","byte-count":"2208","duration":{"second":6,"nanosecond":246000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:47.856Z"},"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":"7a:85:ae:12:45:7d","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":"16","received":"20"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":993000000},"bytes":{"transmitted":"1387","received":"1723"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:af:cd:4d:81: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":989000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a6:a4:85:3b:b2:15","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":"10","received":"10"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":993000000},"bytes":{"transmitted":"841","received":"841"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:47.907Z"}},{"id":"openflow:2","flow-node-inventory:port-number":60124,"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":"25","active-flows":1,"packets-matched":"21"},"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":"21","byte-count":"1757","duration":{"second":6,"nanosecond":255000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:47.865Z"},"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":"ee:ce:11:cf:e9:23","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":"20","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":996000000},"bytes":{"transmitted":"1723","received":"1387"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"32:17:f5:f1:e1:4b","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":990000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"96:5b:76:85:4e:db","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":"10","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":998000000},"bytes":{"transmitted":"841","received":"586"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:40:b1:e1:c2:2b","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":"10","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":995000000},"bytes":{"transmitted":"841","received":"586"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:47.922Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:49.235526" elapsed="0.007560"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:49.235068" elapsed="0.008102"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:49.234053" elapsed="0.009166"/>
</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-08-10T02:06:49.243540" elapsed="0.000386"/>
</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-08-10T02:06:49.244689" elapsed="0.004223"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-08-10T02:06:49.244406" elapsed="0.004548"/>
</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-08-10T02:06:49.249155" elapsed="0.002438"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-08-10T02:06:49.249039" elapsed="0.002595"/>
</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-08-10T02:06:49.251834" elapsed="0.002354"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-08-10T02:06:49.251715" elapsed="0.002513"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:49.244065" elapsed="0.010193"/>
</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-08-10T02:06:49.204496" elapsed="0.049823"/>
</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-08-10T02:06:49.197850" elapsed="0.056541"/>
</kw>
<doc>Get the stats for all nodes</doc>
<status status="PASS" start="2026-08-10T02:06:49.197421" elapsed="0.057104"/>
</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-08-10T02:06:49.269988" level="INFO">GET Request : url=http://10.30.170.209: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=node01082zymril8hm344qsdljv2ye2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:49.271048" level="INFO">GET Response : url=http://10.30.170.209: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":60110,"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":"28","active-flows":1,"packets-matched":"26"},"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":"26","byte-count":"2208","duration":{"second":6,"nanosecond":246000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:49.271622" 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-08-10T02:06:49.259193" elapsed="0.012500"/>
</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-08-10T02:06:49.272040" elapsed="0.004982"/>
</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-08-10T02:06:49.277226" elapsed="0.003221"/>
</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-08-10T02:06:49.258893" elapsed="0.021643"/>
</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-08-10T02:06:49.255417" elapsed="0.025183"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-08-10T02:06:49.254911" elapsed="0.025840"/>
</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-08-10T02:06:49.296910" level="INFO">GET Request : url=http://10.30.170.209: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=node01082zymril8hm344qsdljv2ye2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:49.297962" level="INFO">GET Response : url=http://10.30.170.209: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":60124,"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":"25","active-flows":1,"packets-matched":"21"},"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":"21","byte-count":"1757","duration":{"second":6,"nanosecond":255000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:49.298455" 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-08-10T02:06:49.286650" elapsed="0.011867"/>
</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-08-10T02:06:49.298850" elapsed="0.005274"/>
</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-08-10T02:06:49.304485" elapsed="0.004223"/>
</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-08-10T02:06:49.286217" elapsed="0.022557"/>
</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-08-10T02:06:49.281625" elapsed="0.027195"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-08-10T02:06:49.281110" elapsed="0.027819"/>
</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-08-10T02:06:49.325037" level="INFO">GET Request : url=http://10.30.170.209: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=node01082zymril8hm344qsdljv2ye2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:49.325729" level="INFO">GET Response : url=http://10.30.170.209: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":60116,"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":"21","active-flows":1,"packets-matched":"15"},"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":"15","byte-count":"1215","duration":{"second":6,"nanosecond":212000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:49.326014" 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-08-10T02:06:49.313198" elapsed="0.012853"/>
</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-08-10T02:06:49.326261" elapsed="0.003253"/>
</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-08-10T02:06:49.329716" elapsed="0.003244"/>
</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-08-10T02:06:49.312903" elapsed="0.020145"/>
</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-08-10T02:06:49.309705" elapsed="0.023407"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-08-10T02:06:49.309249" elapsed="0.024013"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:06:49.334178" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:06:49.334068" elapsed="0.000208"/>
</kw>
<doc>Test suite for RESTCONF statistics</doc>
<status status="PASS" start="2026-08-10T02:06:49.163052" elapsed="0.171269"/>
</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-08-10T02:06:49.377077" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ecba2a90&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-08-10T02:06:49.376722" elapsed="0.000543"/>
</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-08-10T02:06:49.404229" level="INFO">PUT Request : url=http://10.30.170.209: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-08-10T02:06:49.404405" level="INFO">PUT Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node01cwtgcayxddqygkh9b7vobxro3.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:06:49 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:49.404640" 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-08-10T02:06:49.377814" elapsed="0.026886"/>
</kw>
<doc>Push a flow through REST-API</doc>
<status status="PASS" start="2026-08-10T02:06:49.377364" elapsed="0.027609"/>
</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-08-10T02:06:49.422616" level="INFO">GET Request : url=http://10.30.170.209: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=node01cwtgcayxddqygkh9b7vobxro3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:49.423042" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:06:49.423261" 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-08-10T02:06:49.406613" elapsed="0.016797"/>
</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-08-10T02:06:49.423752" elapsed="0.004566"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:06:49.405617" elapsed="0.023016"/>
</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-08-10T02:06:49.430834" 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-08-10T02:06:49.430195" elapsed="0.000701"/>
</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-08-10T02:06:49.445379" level="INFO">GET Request : url=http://10.30.170.209: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=node01cwtgcayxddqygkh9b7vobxro3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:49.445661" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:06:49.445798" 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-08-10T02:06:49.435177" 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-08-10T02:06:49.446404" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:49.445965" elapsed="0.000520"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:49.449747" 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-08-10T02:06:49.446697" elapsed="0.003118"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:49.446522" elapsed="0.003343"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:49.445930" elapsed="0.003966"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-08-10T02:06:49.450388" level="FAIL">Url: http://10.30.170.209: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-08-10T02:06:49.450065" elapsed="0.001398">Url: http://10.30.170.209: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-08-10T02:06:49.451830" elapsed="0.000030"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-08-10T02:06:49.451663" elapsed="0.000247"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-08-10T02:06:49.451570" elapsed="0.000378"/>
</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-08-10T02:06:49.434715" elapsed="0.017366">Url: http://10.30.170.209: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-08-10T02:06:51.471125" level="INFO">GET Request : url=http://10.30.170.209: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=node01cwtgcayxddqygkh9b7vobxro3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:51.471429" level="INFO">GET Response : url=http://10.30.170.209: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":431000000}},"flags":""}]} 
 </msg>
<msg time="2026-08-10T02:06:51.471584" 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-08-10T02:06:51.460419" elapsed="0.011193"/>
</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-08-10T02:06:51.472065" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:51.471725" elapsed="0.000398"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:51.476598" 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":431000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:51.472275" elapsed="0.004439"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:51.472151" elapsed="0.004642"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:51.471699" elapsed="0.005143"/>
</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-08-10T02:06:51.477108" elapsed="0.000419"/>
</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-08-10T02:06:51.478242" elapsed="0.004818"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-08-10T02:06:51.477958" elapsed="0.005193"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:51.477656" elapsed="0.005567"/>
</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-08-10T02:06:51.459138" elapsed="0.024244"/>
</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-08-10T02:06:49.431230" elapsed="2.052319"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:06:49.429146" elapsed="2.054809"/>
</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-08-10T02:06:51.499148" level="INFO">DELETE Request : url=http://10.30.170.209: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=node01cwtgcayxddqygkh9b7vobxro3.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:51.499254" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:06:51.499542" 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-08-10T02:06:51.485112" elapsed="0.014493"/>
</kw>
<doc>Remove a flow</doc>
<status status="PASS" start="2026-08-10T02:06:51.484581" elapsed="0.015280"/>
</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-08-10T02:06:51.509659" level="INFO">GET Request : url=http://10.30.170.209: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=node01cwtgcayxddqygkh9b7vobxro3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:51.509843" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:06:51.509973" 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-08-10T02:06:51.501429" elapsed="0.008581"/>
</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-08-10T02:06:51.510226" elapsed="0.002824"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:06:51.500406" elapsed="0.012801"/>
</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-08-10T02:06:51.514585" 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-08-10T02:06:51.514186" elapsed="0.000435"/>
</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-08-10T02:06:51.531445" level="INFO">GET Request : url=http://10.30.170.209: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=node01cwtgcayxddqygkh9b7vobxro3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:51.537711" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '1097'} 
 body={"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]} 
 </msg>
<msg time="2026-08-10T02:06:51.537932" 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-08-10T02:06:51.524682" elapsed="0.013293"/>
</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-08-10T02:06:51.538656" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:51.538132" elapsed="0.000610"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:51.542536" level="INFO">{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:51.538960" elapsed="0.003654"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:51.538784" elapsed="0.003947"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:51.538088" elapsed="0.004675"/>
</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-08-10T02:06:51.543094" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:06:51.543035" elapsed="0.000122"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:06:51.543015" elapsed="0.000171"/>
</if>
<status status="NOT RUN" start="2026-08-10T02:06:51.542846" elapsed="0.000372"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:51.542822" elapsed="0.000424"/>
</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-08-10T02:06:51.543438" elapsed="0.000295"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:06:51.547035" level="FAIL">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' 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-08-10T02:06:51.544200" elapsed="0.002962">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' contains '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-08-10T02:06:51.544022" elapsed="0.003227">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' contains '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-08-10T02:06:51.543820" elapsed="0.003499">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' 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-08-10T02:06:51.523956" elapsed="0.023503">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' 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-08-10T02:06:53.568478" level="INFO">GET Request : url=http://10.30.170.209: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=node01cwtgcayxddqygkh9b7vobxro3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:53.569491" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '1097'} 
 body={"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]} 
 </msg>
<msg time="2026-08-10T02:06:53.569644" 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-08-10T02:06:53.559251" elapsed="0.010430"/>
</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-08-10T02:06:53.570208" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:53.569798" elapsed="0.000490"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:53.574220" level="INFO">{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:53.570517" elapsed="0.003781"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:53.570322" elapsed="0.004047"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:53.569769" elapsed="0.004632"/>
</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-08-10T02:06:53.574719" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:06:53.574668" elapsed="0.000109"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:06:53.574648" elapsed="0.000159"/>
</if>
<status status="NOT RUN" start="2026-08-10T02:06:53.574480" elapsed="0.000356"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:53.574457" elapsed="0.000407"/>
</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-08-10T02:06:53.575028" elapsed="0.000239"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:06:53.579366" level="FAIL">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' 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-08-10T02:06:53.575740" elapsed="0.003749">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' contains '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-08-10T02:06:53.575553" elapsed="0.004044">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' contains '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-08-10T02:06:53.575366" elapsed="0.004400">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' 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-08-10T02:06:53.558727" elapsed="0.021191">'{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"31","active-flows":2,"packets-matched":"29"},"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":"29","byte-count":"2458","duration":{"second":9,"nanosecond":303000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":431000000}},"flags":""}]}]}' 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-08-10T02:06:55.602264" level="INFO">GET Request : url=http://10.30.170.209: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=node01cwtgcayxddqygkh9b7vobxro3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:06:55.603256" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '611'} 
 body={"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"34","active-flows":1,"packets-matched":"32"},"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":"32","byte-count":"2698","duration":{"second":12,"nanosecond":355000000}},"flags":"SEND_FLOW_REM"}]}]} 
 </msg>
<msg time="2026-08-10T02:06:55.603439" 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-08-10T02:06:55.593525" elapsed="0.009952"/>
</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-08-10T02:06:55.604040" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:55.603605" elapsed="0.000517"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:55.608062" level="INFO">{"flow-node-inventory:table":[{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"34","active-flows":1,"packets-matched":"32"},"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":"32","byte-count":"2698","duration":{"second":12,"nanosecond":355000000}},"flags":"SEND_FLOW_REM"}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:55.604327" elapsed="0.003810"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:55.604158" elapsed="0.004029"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:55.603572" elapsed="0.004646"/>
</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-08-10T02:06:55.608563" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:06:55.608509" elapsed="0.000111"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:06:55.608488" elapsed="0.000162"/>
</if>
<status status="NOT RUN" start="2026-08-10T02:06:55.608296" elapsed="0.000385"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:55.608274" elapsed="0.000434"/>
</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-08-10T02:06:55.608870" elapsed="0.000240"/>
</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-08-10T02:06:55.609585" elapsed="0.003451"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-08-10T02:06:55.609404" elapsed="0.003690"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:06:55.609188" elapsed="0.003950"/>
</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-08-10T02:06:55.592885" elapsed="0.020332"/>
</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-08-10T02:06:51.514837" elapsed="4.098452"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:06:51.513551" elapsed="4.100024"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:06:55.614580" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:06:55.614465" elapsed="0.000221"/>
</kw>
<doc>Test suite for RESTCONF FRM</doc>
<status status="PASS" start="2026-08-10T02:06:49.340170" elapsed="6.274563"/>
</suite>
<kw name="Stop Mininet" owner="Utils" type="TEARDOWN">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:55.617203" 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-08-10T02:06:55.616982" elapsed="0.000267"/>
</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-08-10T02:06:55.617521" elapsed="0.000154"/>
</kw>
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-08-10T02:06:55.617805" elapsed="0.000151"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:06:55.620747" 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-08-10T02:06:55.618081" elapsed="0.002721"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:06:55.947785" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 6 links
......
*** Stopping 3 switches
s1 s2 s3 
*** Stopping 4 hosts
h1 h2 h3 h4 
*** Done
completed in 15.208 seconds
[?2004h[jenkins@releng-14419-806-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-08-10T02:06:55.620934" elapsed="0.326922"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:06:55.948000" elapsed="0.000258"/>
</kw>
<doc>Cleanup/Shutdown work that should be done at the completion of all
tests</doc>
<status status="PASS" start="2026-08-10T02:06:55.616665" elapsed="0.331655"/>
</kw>
<doc>Test suite for MD-SAL NSF</doc>
<status status="PASS" start="2026-08-10T02:06:37.496220" elapsed="18.452152"/>
</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-08-10T02:06:55.981309" 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-08-10T02:06:55.981058" elapsed="0.000318"/>
</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-08-10T02:06:55.983722" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:55.983473" elapsed="0.000307"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:55.983445" elapsed="0.000360"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:55.984096" 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-08-10T02:06:55.984202" 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-08-10T02:06:55.983932" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:55.984750" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:06:55.984370" elapsed="0.000426"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:55.985350" 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-08-10T02:06:55.984924" elapsed="0.000455"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:06:55.986155" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:06:55.986231" 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-08-10T02:06:55.985883" elapsed="0.000372"/>
</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-08-10T02:06:55.986405" elapsed="0.000326"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:06:55.987550" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:06:56.328588" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:06:38 UTC 2026

  System load:  0.02               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:06:40 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:06:55.987215" elapsed="0.341485"/>
</kw>
<msg time="2026-08-10T02:06:56.328845" 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-08-10T02:06:55.986871" elapsed="0.342051"/>
</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-08-10T02:06:55.985569" elapsed="0.343451"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:06:56.329421" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:06:57.543229" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:06:57.543562" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:06:57.543668" 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-08-10T02:06:56.329191" elapsed="1.214533"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:06:57.544048" elapsed="0.000544"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:57.545573" 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-08-10T02:06:57.544914" elapsed="0.000782"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:06:57.546167" elapsed="0.000077"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:06:57.545865" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:57.545815" elapsed="0.000598"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:06:57.546780" elapsed="0.000063"/>
</return>
<status status="PASS" start="2026-08-10T02:06:57.546536" elapsed="0.000380"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:57.546502" elapsed="0.000466"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:06:57.547044" 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-08-10T02:06:57.551530" elapsed="0.000452"/>
</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-08-10T02:06:57.552177" elapsed="0.000246"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:06:57.552590" elapsed="0.000135"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:06:57.547724" elapsed="0.005072"/>
</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-08-10T02:06:55.982965" elapsed="1.569959"/>
</kw>
<msg time="2026-08-10T02:06:57.553000" 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-08-10T02:06:55.982417" elapsed="1.570652"/>
</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-08-10T02:06:55.981968" elapsed="1.571214"/>
</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-08-10T02:06:57.555826" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:57.555503" elapsed="0.000402"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:57.555478" elapsed="0.000458"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:57.556296" 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-08-10T02:06:57.556470" 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-08-10T02:06:57.556104" elapsed="0.000403"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:57.557202" 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.177" 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-08-10T02:06:57.556678" elapsed="0.000589"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:57.558049" 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-08-10T02:06:57.557533" elapsed="0.000552"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:06:57.559759" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:06:57.559837" 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-08-10T02:06:57.559479" elapsed="0.000382"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:06:57.559990" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:06:57.561111" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:06:57.961842" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:06:38 UTC 2026

  System load:  0.02               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:06:56 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:06:57.560800" elapsed="0.401133"/>
</kw>
<msg time="2026-08-10T02:06:57.961995" 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-08-10T02:06:57.560472" elapsed="0.401584"/>
</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-08-10T02:06:57.559141" elapsed="0.403006"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:06:57.962491" 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-08-10T02:06:58.006117" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:06:58.006407" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:06:58.006509" 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-08-10T02:06:57.962295" elapsed="0.044265"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:06:58.006858" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:58.008227" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:06:58.007662" elapsed="0.000657"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:06:58.008808" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:06:58.008516" elapsed="0.000396"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:58.008471" elapsed="0.000490"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:06:58.009313" elapsed="0.000094"/>
</return>
<status status="PASS" start="2026-08-10T02:06:58.009077" elapsed="0.000408"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:58.009044" elapsed="0.000493"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:06:58.009613" 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-08-10T02:06:58.014122" elapsed="0.000328"/>
</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-08-10T02:06:58.014586" elapsed="0.000150"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:06:58.014853" elapsed="0.000096"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:06:58.010221" elapsed="0.004779"/>
</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-08-10T02:06:57.554820" elapsed="0.460271"/>
</kw>
<msg time="2026-08-10T02:06:58.015145" 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-08-10T02:06:57.553993" elapsed="0.461201"/>
</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-08-10T02:06:57.553411" elapsed="0.461863"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:55.981527" elapsed="2.033807"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:06:58.015898" 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-08-10T02:06:58.015484" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:06:58.016423" 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-08-10T02:06:58.016078" elapsed="0.000389"/>
</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-08-10T02:06:58.018056" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:06:58.018134" 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-08-10T02:06:58.017792" 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-08-10T02:06:58.018285" elapsed="0.000339"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:06:58.019418" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:06:58.372241" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:06:38 UTC 2026

  System load:  0.02               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:06:57 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:06:58.019090" elapsed="0.353237"/>
</kw>
<msg time="2026-08-10T02:06:58.372407" 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-08-10T02:06:58.018762" elapsed="0.353699"/>
</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-08-10T02:06:58.017389" elapsed="0.355155"/>
</kw>
<msg time="2026-08-10T02:06:58.372592" 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-08-10T02:06:58.017018" elapsed="0.355617"/>
</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-08-10T02:06:58.016635" elapsed="0.356069"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:06:58.372956" level="INFO">Executing command 'sudo ovs-vsctl set-manager ptcp:6644'.</msg>
<msg time="2026-08-10T02:06:58.396117" 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-08-10T02:06:58.372853" elapsed="0.023396"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:06:58.446194" level="INFO">sudo mn --controller=remote,ip=10.30.170.209 --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-08-10T02:06:58.396580" elapsed="0.049679"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:06:58.790741" level="INFO">[?2004l*** Creating network
*** Adding controller
Connecting to remote controller at 10.30.170.209: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-08-10T02:06:58.446417" elapsed="0.344409"/>
</kw>
<doc>Basic setup/cleanup work that can be done safely before any system
is run.</doc>
<status status="PASS" start="2026-08-10T02:06:55.980641" elapsed="2.810251"/>
</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-08-10T02:06:58.827052" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ee4c5390&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-08-10T02:06:58.826717" elapsed="0.000518"/>
</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-08-10T02:06:58.847298" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:06:58.847742" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=409, reason=Conflict 
 headers={'Set-Cookie': 'JSESSIONID=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:06:58 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-08-10T02:06:58.848239" 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-08-10T02:06:58.835207" elapsed="0.013094"/>
</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-08-10T02:06:58.849327" elapsed="0.000090"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:06:58.848539" elapsed="0.000952"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:06:58.854500" 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-08-10T02:06:58.849816" elapsed="0.004796"/>
</kw>
<status status="PASS" start="2026-08-10T02:06:58.849548" elapsed="0.005142"/>
</branch>
<status status="PASS" start="2026-08-10T02:06:58.848491" elapsed="0.006248"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-08-10T02:06:58.855481" level="FAIL">Url: http://10.30.170.209: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-08-10T02:06:58.855003" elapsed="0.001404">Url: http://10.30.170.209: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-08-10T02:06:58.856965" elapsed="0.000046"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-08-10T02:06:58.856705" elapsed="0.000385"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-08-10T02:06:58.856569" elapsed="0.000579"/>
</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-08-10T02:06:58.834815" elapsed="0.022630">Url: http://10.30.170.209: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-08-10T02:07:00.892622" level="INFO">GET Request : url=http://10.30.170.209: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=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:00.893914" level="INFO">GET Response : url=http://10.30.170.209: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":44242,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"},"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":12000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:00.894555" 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-08-10T02:07:00.869452" elapsed="0.025171"/>
</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-08-10T02:07:00.895746" elapsed="0.000066"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:00.894868" elapsed="0.001028"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:00.902050" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44242,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"},"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":12000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:58.971Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"52:33:7e:3a:b6:c8","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":"2","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":256000000},"bytes":{"transmitted":"175","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"32:03:e6:d0:ac:13","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":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":255000000},"bytes":{"transmitted":"265","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:2d:ef:c7:7e:4b","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":255000000},"bytes":{"transmitted":"261","received":"176"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:67:e9:f7:47:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":244000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:59.006Z"}},{"id":"openflow:1","flow-node-inventory:port-number":44240,"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":"1"},"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":5000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:58.985Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"0a:66:76:b2:94:ff","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":273000000},"bytes":{"transmitted":"175","received":"265"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"fa:53:99:31:3d:47","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":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":264000000},"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:8c:0f:de:c9:71","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":274000000},"bytes":{"transmitted":"175","received":"175"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:59.022Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44248,"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":"1"},"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":6000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:58.969Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"6a:e8:6e:c1:69:8f","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":261000000},"bytes":{"transmitted":"265","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:26:d8:2e:07:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":246000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:2e:d6:a2:29:a5","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":261000000},"bytes":{"transmitted":"175","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"5e:94:81:38:86:75","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":261000000},"bytes":{"transmitted":"261","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:59.024Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:00.896274" elapsed="0.008373"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:00.895963" elapsed="0.008772"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:00.894809" elapsed="0.009977"/>
</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-08-10T02:07:00.905040" elapsed="0.000193"/>
</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-08-10T02:07:00.905597" elapsed="0.002828"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-08-10T02:07:00.905460" elapsed="0.003008"/>
</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-08-10T02:07:00.908672" elapsed="0.002441"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-08-10T02:07:00.908554" elapsed="0.002600"/>
</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-08-10T02:07:00.911386" elapsed="0.002419"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-08-10T02:07:00.911251" elapsed="0.002595"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:00.905295" elapsed="0.008581"/>
</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-08-10T02:07:00.868738" elapsed="0.045206"/>
</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-08-10T02:06:58.828303" elapsed="2.085694"/>
</kw>
<doc>Get the inventory</doc>
<status status="PASS" start="2026-08-10T02:06:58.827307" elapsed="2.086827"/>
</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-08-10T02:07:00.943544" level="INFO">GET Request : url=http://10.30.170.209: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=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:00.944819" level="INFO">GET Response : url=http://10.30.170.209: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":44242,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"},"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":12000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:00.945271" 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-08-10T02:07:00.925054" elapsed="0.020311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:00.949857" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44242,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"},"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":12000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:58.971Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"52:33:7e:3a:b6:c8","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":"2","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":256000000},"bytes":{"transmitted":"175","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"32:03:e6:d0:ac:13","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":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":255000000},"bytes":{"transmitted":"265","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:2d:ef:c7:7e:4b","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":255000000},"bytes":{"transmitted":"261","received":"176"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:67:e9:f7:47:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":244000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:59.006Z"}},{"id":"openflow:1","flow-node-inventory:port-number":44240,"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":"1"},"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":5000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:58.985Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"0a:66:76:b2:94:ff","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":273000000},"bytes":{"transmitted":"175","received":"265"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"fa:53:99:31:3d:47","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":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":264000000},"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:8c:0f:de:c9:71","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":274000000},"bytes":{"transmitted":"175","received":"175"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:59.022Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44248,"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":"1"},"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":6000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:58.969Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"6a:e8:6e:c1:69:8f","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":261000000},"bytes":{"transmitted":"265","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:26:d8:2e:07:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":246000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:2e:d6:a2:29:a5","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":261000000},"bytes":{"transmitted":"175","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"5e:94:81:38:86:75","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":261000000},"bytes":{"transmitted":"261","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:59.024Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:00.945708" elapsed="0.005668"/>
</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-08-10T02:07:00.951582" elapsed="0.000235"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:07:00.955538" 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-08-10T02:07:00.952017" elapsed="0.004062"/>
</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-08-10T02:07:00.924669" elapsed="0.031477"/>
</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-08-10T02:07:00.915227" elapsed="0.040972"/>
</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-08-10T02:07:00.914662" elapsed="0.041651"/>
</test>
<test id="s1-s2-s1-t3" name="Get node 1 inventory" line="49">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:07:00.957405" 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-08-10T02:07:00.956959" elapsed="0.000474"/>
</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-08-10T02:07:00.973916" level="INFO">GET Request : url=http://10.30.170.209: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=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:00.974964" level="INFO">GET Response : url=http://10.30.170.209: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":44240,"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":"1"},"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":5000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:00.975445" 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-08-10T02:07:00.964491" elapsed="0.011016"/>
</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-08-10T02:07:00.976391" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:00.975713" elapsed="0.000809"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:00.982209" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":44240,"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":"1"},"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":5000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:58.985Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"0a:66:76:b2:94:ff","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":273000000},"bytes":{"transmitted":"175","received":"265"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"fa:53:99:31:3d:47","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":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":264000000},"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:8c:0f:de:c9:71","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":274000000},"bytes":{"transmitted":"175","received":"175"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:59.022Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:00.976848" elapsed="0.006227"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:00.976577" elapsed="0.006581"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:00.975669" 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-08-10T02:07:00.983513" elapsed="0.000445"/>
</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-08-10T02:07:00.984283" elapsed="0.002417"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-08-10T02:07:00.984159" 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-08-10T02:07:00.986941" elapsed="0.002434"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-08-10T02:07:00.986823" elapsed="0.002598"/>
</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-08-10T02:07:00.989622" elapsed="0.002578"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-08-10T02:07:00.989503" elapsed="0.002739"/>
</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-08-10T02:07:00.992461" elapsed="0.002383"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-08-10T02:07:00.992323" elapsed="0.002562"/>
</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-08-10T02:07:00.995082" elapsed="0.002413"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-08-10T02:07:00.994966" 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-08-10T02:07:00.997732" elapsed="0.002387"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.177"</var>
<status status="PASS" start="2026-08-10T02:07:00.997617" 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-08-10T02:07:01.000375" elapsed="0.002375"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-08-10T02:07:01.000241" 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-08-10T02:07:01.002988" elapsed="0.002423"/>
</kw>
<var name="${i}">openflow:1:1</var>
<status status="PASS" start="2026-08-10T02:07:01.002872" elapsed="0.002579"/>
</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-08-10T02:07:01.005651" elapsed="0.002398"/>
</kw>
<var name="${i}">openflow:1:2</var>
<status status="PASS" start="2026-08-10T02:07:01.005534" elapsed="0.002556"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:00.984026" elapsed="0.024094"/>
</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-08-10T02:07:00.963985" elapsed="0.044188"/>
</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-08-10T02:07:00.957595" elapsed="0.050629"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-08-10T02:07:00.956564" elapsed="0.051789"/>
</test>
<test id="s1-s2-s1-t4" name="Get node 2 inventory" line="60">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.009506" 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-08-10T02:07:01.009054" elapsed="0.000480"/>
</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-08-10T02:07:01.023786" level="INFO">GET Request : url=http://10.30.170.209: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=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:01.024245" level="INFO">GET Response : url=http://10.30.170.209: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":44248,"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":"1"},"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":6000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:01.024478" 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-08-10T02:07:01.016371" elapsed="0.008134"/>
</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-08-10T02:07:01.024897" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:01.024584" elapsed="0.000441"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.036106" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":44248,"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":"1"},"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":6000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:58.969Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"6a:e8:6e:c1:69:8f","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":261000000},"bytes":{"transmitted":"265","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:26:d8:2e:07:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":246000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:2e:d6:a2:29:a5","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":261000000},"bytes":{"transmitted":"175","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"5e:94:81:38:86:75","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":261000000},"bytes":{"transmitted":"261","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:59.024Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:01.025390" elapsed="0.011128"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:01.025082" elapsed="0.011479"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:01.024565" elapsed="0.012018"/>
</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-08-10T02:07:01.036705" elapsed="0.000173"/>
</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-08-10T02:07:01.037173" elapsed="0.002407"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-08-10T02:07:01.037057" elapsed="0.002563"/>
</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-08-10T02:07:01.039846" elapsed="0.002380"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-08-10T02:07:01.039702" elapsed="0.002565"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:07:01.042484" elapsed="0.002407"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-08-10T02:07:01.042366" elapsed="0.002566"/>
</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-08-10T02:07:01.045130" elapsed="0.002380"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-08-10T02:07:01.045013" elapsed="0.002537"/>
</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-08-10T02:07:01.047749" elapsed="0.002555"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-08-10T02:07:01.047631" elapsed="0.002733"/>
</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-08-10T02:07:01.050562" elapsed="0.002385"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.177"</var>
<status status="PASS" start="2026-08-10T02:07:01.050447" elapsed="0.002540"/>
</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-08-10T02:07:01.053183" elapsed="0.002393"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-08-10T02:07:01.053067" 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-08-10T02:07:01.055813" elapsed="0.002406"/>
</kw>
<var name="${i}">openflow:2:1</var>
<status status="PASS" start="2026-08-10T02:07:01.055697" elapsed="0.002563"/>
</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-08-10T02:07:01.058476" elapsed="0.002474"/>
</kw>
<var name="${i}">openflow:2:2</var>
<status status="PASS" start="2026-08-10T02:07:01.058358" elapsed="0.002635"/>
</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-08-10T02:07:01.061201" elapsed="0.002408"/>
</kw>
<var name="${i}">openflow:2:3</var>
<status status="PASS" start="2026-08-10T02:07:01.061076" elapsed="0.002574"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:01.036931" elapsed="0.026749"/>
</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-08-10T02:07:01.015867" elapsed="0.047871"/>
</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-08-10T02:07:01.009699" elapsed="0.054091"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-08-10T02:07:01.008661" elapsed="0.055248"/>
</test>
<test id="s1-s2-s1-t5" name="Get node 3 inventory" line="71">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.065090" 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-08-10T02:07:01.064661" elapsed="0.000458"/>
</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-08-10T02:07:01.083685" level="INFO">GET Request : url=http://10.30.170.209: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=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:01.084587" level="INFO">GET Response : url=http://10.30.170.209: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":44242,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"},"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":12000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:01.085108" 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-08-10T02:07:01.072033" elapsed="0.013136"/>
</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-08-10T02:07:01.086063" elapsed="0.000060"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:01.085383" elapsed="0.000811"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.091812" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":44242,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"},"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":12000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:06:58.971Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"52:33:7e:3a:b6:c8","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":"2","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":256000000},"bytes":{"transmitted":"175","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"32:03:e6:d0:ac:13","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":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":255000000},"bytes":{"transmitted":"265","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:2d:ef:c7:7e:4b","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":255000000},"bytes":{"transmitted":"261","received":"176"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:67:e9:f7:47:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":244000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:06:59.006Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:01.086557" elapsed="0.006217"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:01.086249" elapsed="0.006618"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:01.085304" elapsed="0.007620"/>
</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-08-10T02:07:01.093091" elapsed="0.000166"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:07:01.093575" elapsed="0.002388"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-08-10T02:07:01.093458" elapsed="0.002546"/>
</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-08-10T02:07:01.096230" elapsed="0.002400"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-08-10T02:07:01.096109" 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-08-10T02:07:01.098868" elapsed="0.002393"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-08-10T02:07:01.098752" 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-08-10T02:07:01.101518" elapsed="0.002378"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-08-10T02:07:01.101401" 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-08-10T02:07:01.104155" elapsed="0.002385"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-08-10T02:07:01.104024" 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-08-10T02:07:01.106778" elapsed="0.002584"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.177"</var>
<status status="PASS" start="2026-08-10T02:07:01.106661" elapsed="0.002743"/>
</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-08-10T02:07:01.109599" elapsed="0.002373"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-08-10T02:07:01.109483" elapsed="0.002529"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:07:01.112225" elapsed="0.002489"/>
</kw>
<var name="${i}">openflow:3:1</var>
<status status="PASS" start="2026-08-10T02:07:01.112092" elapsed="0.002663"/>
</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-08-10T02:07:01.114950" elapsed="0.002431"/>
</kw>
<var name="${i}">openflow:3:2</var>
<status status="PASS" start="2026-08-10T02:07:01.114834" elapsed="0.002588"/>
</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-08-10T02:07:01.117617" elapsed="0.002381"/>
</kw>
<var name="${i}">openflow:3:3</var>
<status status="PASS" start="2026-08-10T02:07:01.117501" elapsed="0.002537"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:01.093311" elapsed="0.026757"/>
</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-08-10T02:07:01.071508" elapsed="0.048614"/>
</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-08-10T02:07:01.065294" elapsed="0.054894"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-08-10T02:07:01.064242" elapsed="0.056059"/>
</test>
<test id="s1-s2-s1-t6" name="Link Down" line="82">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:01.123012" 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-08-10T02:07:01.120916" elapsed="0.002153"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:01.127520" 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-08-10T02:07:01.123209" elapsed="0.004369"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.128001" 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-08-10T02:07:01.127716" elapsed="0.000312"/>
</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-08-10T02:07:01.143931" level="INFO">GET Request : url=http://10.30.170.209: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=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:01.144227" level="INFO">GET Response : url=http://10.30.170.209: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":"0a:66:76:b2:94:ff","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-08-10T02:07:01.144469" 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-08-10T02:07:01.134818" elapsed="0.009689"/>
</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-08-10T02:07:01.145011" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:01.144616" elapsed="0.000474"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.148173" 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":"0a:66:76:b2:94:ff","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-08-10T02:07:01.145291" elapsed="0.002952"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:01.145125" elapsed="0.003166"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:01.144589" elapsed="0.003773"/>
</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-08-10T02:07:01.148539" elapsed="0.000229"/>
</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-08-10T02:07:01.149182" elapsed="0.002968"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-08-10T02:07:01.149022" elapsed="0.003185"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:01.148844" elapsed="0.003403"/>
</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-08-10T02:07:01.134318" elapsed="0.018063"/>
</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-08-10T02:07:01.128178" elapsed="0.024280"/>
</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-08-10T02:07:01.166633" level="INFO">GET Request : url=http://10.30.170.209: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=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:01.166821" level="INFO">GET Response : url=http://10.30.170.209: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":"6a:e8:6e:c1:69:8f","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-08-10T02:07:01.166917" 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-08-10T02:07:01.159406" elapsed="0.007538"/>
</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-08-10T02:07:01.167300" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:01.167021" elapsed="0.000365"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.171001" 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":"6a:e8:6e:c1:69:8f","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-08-10T02:07:01.167534" elapsed="0.003580"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:01.167411" elapsed="0.003782"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:01.167003" elapsed="0.004238"/>
</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-08-10T02:07:01.171546" elapsed="0.000372"/>
</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-08-10T02:07:01.172641" elapsed="0.004585"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-08-10T02:07:01.172310" elapsed="0.004956"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:01.172034" elapsed="0.005262"/>
</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-08-10T02:07:01.158905" elapsed="0.018463"/>
</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-08-10T02:07:01.152683" elapsed="0.024736"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-08-10T02:07:01.120551" elapsed="0.056979"/>
</test>
<test id="s1-s2-s1-t7" name="Link Up" line="100">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:01.179715" 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-08-10T02:07:01.178163" elapsed="0.001608"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:01.183277" 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-08-10T02:07:01.179914" elapsed="0.003436"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.183765" 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-08-10T02:07:01.183490" elapsed="0.000302"/>
</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-08-10T02:07:01.199232" level="INFO">GET Request : url=http://10.30.170.209: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=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:01.199447" level="INFO">GET Response : url=http://10.30.170.209: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":"0a:66:76:b2:94:ff","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-08-10T02:07:01.199545" 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-08-10T02:07:01.190581" elapsed="0.008990"/>
</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-08-10T02:07:01.199928" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:01.199648" elapsed="0.000336"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.203988" 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":"0a:66:76:b2:94:ff","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-08-10T02:07:01.200130" elapsed="0.003972"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:01.200008" elapsed="0.004171"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:01.199630" elapsed="0.004598"/>
</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-08-10T02:07:01.204535" elapsed="0.000420"/>
</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-08-10T02:07:01.205654" elapsed="0.003967"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-08-10T02:07:01.205389" elapsed="0.004272"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:01.205074" elapsed="0.004617"/>
</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-08-10T02:07:01.190078" elapsed="0.019666"/>
</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-08-10T02:07:01.183937" elapsed="0.025856"/>
</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-08-10T02:07:01.223968" level="INFO">GET Request : url=http://10.30.170.209: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=node0wz8hwpdzjaz016jy7v6xw6i5o4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:01.224159" level="INFO">GET Response : url=http://10.30.170.209: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":"6a:e8:6e:c1:69:8f","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-08-10T02:07:01.224255" 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-08-10T02:07:01.216543" elapsed="0.007738"/>
</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-08-10T02:07:01.224695" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:01.224386" elapsed="0.000411"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.228534" 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":"6a:e8:6e:c1:69:8f","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-08-10T02:07:01.224953" elapsed="0.003695"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:01.224825" elapsed="0.003933"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:01.224365" elapsed="0.004444"/>
</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-08-10T02:07:01.229078" elapsed="0.000401"/>
</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-08-10T02:07:01.230131" elapsed="0.004498"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-08-10T02:07:01.229875" elapsed="0.004794"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:01.229597" elapsed="0.005103"/>
</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-08-10T02:07:01.216040" elapsed="0.018711"/>
</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-08-10T02:07:01.209954" elapsed="0.024846"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-08-10T02:07:01.177796" elapsed="0.057113"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:07:01.235472" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:07:01.235392" elapsed="0.000149"/>
</kw>
<doc>Test suite for RESTCONF inventory</doc>
<status status="PASS" start="2026-08-10T02:06:58.790963" elapsed="2.444610"/>
</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-08-10T02:07:01.266757" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/json'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ecbaef90&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-08-10T02:07:01.266433" elapsed="0.000485"/>
</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-08-10T02:07:01.284371" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:07:01.284827" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0k325x19cinu9npru9djms37i5.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:07:01 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","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow: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-08-10T02:07:01.285245" 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-08-10T02:07:01.273980" elapsed="0.011326"/>
</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-08-10T02:07:01.286213" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:01.285533" elapsed="0.000841"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.291869" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow: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-08-10T02:07:01.286718" elapsed="0.005331"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:01.286434" elapsed="0.005694"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:01.285485" elapsed="0.006692"/>
</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-08-10T02:07:01.292481" elapsed="0.000372"/>
</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-08-10T02:07:01.293626" elapsed="0.002459"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-08-10T02:07:01.293327" elapsed="0.002798"/>
</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-08-10T02:07:01.296320" elapsed="0.002317"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-08-10T02:07:01.296205" elapsed="0.002473"/>
</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-08-10T02:07:01.298879" elapsed="0.002360"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-08-10T02:07:01.298758" elapsed="0.002521"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:01.293034" elapsed="0.008275"/>
</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-08-10T02:07:01.273566" elapsed="0.027817"/>
</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-08-10T02:07:01.267444" elapsed="0.033990"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:01.309560" level="INFO">GET Request : url=http://10.30.170.209: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=node0k325x19cinu9npru9djms37i5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:01.310185" level="INFO">GET Response : url=http://10.30.170.209: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","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow: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-08-10T02:07:01.310569" 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-08-10T02:07:01.301569" elapsed="0.009061"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.315979" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow: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-08-10T02:07:01.310956" elapsed="0.005179"/>
</kw>
<doc>Get RESTCONF Topology and validate the result.</doc>
<status status="PASS" start="2026-08-10T02:07:01.266984" elapsed="0.049430"/>
</test>
<test id="s1-s2-s2-t2" name="List all the links" line="31">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.318708" 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-08-10T02:07:01.317942" elapsed="0.000827"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.319818" 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-08-10T02:07:01.319099" elapsed="0.000778"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.321181" 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-08-10T02:07:01.320203" elapsed="0.001043"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.322165" 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-08-10T02:07:01.321621" elapsed="0.000586"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.322671" 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-08-10T02:07:01.322367" elapsed="0.000330"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.323135" 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-08-10T02:07:01.322841" elapsed="0.000320"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.323708" 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-08-10T02:07:01.323303" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.324192" 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-08-10T02:07:01.323882" elapsed="0.000352"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.324690" 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-08-10T02:07:01.324391" elapsed="0.000324"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.325181" 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-08-10T02:07:01.324861" elapsed="0.000376"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.325794" 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-08-10T02:07:01.325400" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.326275" 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-08-10T02:07:01.325974" elapsed="0.000342"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.326768" 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-08-10T02:07:01.326474" elapsed="0.000320"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.327228" 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-08-10T02:07:01.326937" elapsed="0.000317"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.327802" 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-08-10T02:07:01.327414" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.328275" 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-08-10T02:07:01.327976" elapsed="0.000340"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.328845" 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-08-10T02:07:01.328469" elapsed="0.000404"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:01.338616" level="INFO">GET Request : url=http://10.30.170.209: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=node0k325x19cinu9npru9djms37i5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:01.339302" level="INFO">GET Response : url=http://10.30.170.209: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","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow: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-08-10T02:07:01.339639" 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-08-10T02:07:01.330054" elapsed="0.009644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.345179" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow: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-08-10T02:07:01.340027" elapsed="0.005424"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.351010" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-08-10T02:07:01.350536" elapsed="0.000504"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-08-10T02:07:01.351095" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:07:01.351308" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-08-10T02:07:01.345878" elapsed="0.005475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.351776" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow: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-08-10T02:07:01.351491" elapsed="0.000351"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:07:01.352200" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-08-10T02:07:01.351981" elapsed="0.000247"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-08-10T02:07:01.352615" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:07:01.352386" elapsed="0.000256"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:07:01.352963" 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-08-10T02:07:01.352779" elapsed="0.000210"/>
</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-08-10T02:07:01.353307" elapsed="0.000333"/>
</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-08-10T02:07:01.353178" elapsed="0.000501"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:07:01.354256" 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-08-10T02:07:01.353886" elapsed="0.000491">'[{'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-08-10T02:07:01.353768" elapsed="0.000723">'[{'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-08-10T02:07:01.353041" elapsed="0.001515">'[{'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-08-10T02:07:01.329753" elapsed="0.024907">'[{'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-08-10T02:07:03.366575" level="INFO">GET Request : url=http://10.30.170.209: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=node0k325x19cinu9npru9djms37i5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:03.367617" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-08-10T02:07:03.367901" 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-08-10T02:07:03.356435" elapsed="0.011528"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.373586" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:03.368321" elapsed="0.005573"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.377596" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-08-10T02:07:03.377076" elapsed="0.000550"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-08-10T02:07:03.377680" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:07:03.377913" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-08-10T02:07:03.374374" elapsed="0.003568"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.378405" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:03.378091" elapsed="0.000384"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:07:03.378839" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-08-10T02:07:03.378614" elapsed="0.000262"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-08-10T02:07:03.379243" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:07:03.379015" elapsed="0.000255"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:07:03.379612" 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-08-10T02:07:03.379424" 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-08-10T02:07:03.379969" elapsed="0.000331"/>
</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-08-10T02:07:03.379852" elapsed="0.000504"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:07:03.380564" elapsed="0.000573"/>
</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-08-10T02:07:03.380453" elapsed="0.000724"/>
</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-08-10T02:07:03.381402" 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-08-10T02:07:03.381269" elapsed="0.000484"/>
</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-08-10T02:07:03.382027" 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-08-10T02:07:03.381911" elapsed="0.000491"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-08-10T02:07:03.379698" elapsed="0.002735"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-08-10T02:07:03.355538" elapsed="0.026950"/>
</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-08-10T02:07:01.329023" elapsed="2.053510"/>
</kw>
<doc>List all the links in the topology.</doc>
<status status="PASS" start="2026-08-10T02:07:01.316952" elapsed="2.065706"/>
</test>
<test id="s1-s2-s2-t3" name="Link Down" line="52">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:03.385261" 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-08-10T02:07:03.383357" elapsed="0.001959"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:03.390032" 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-08-10T02:07:03.385469" elapsed="0.004618"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.390576" 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-08-10T02:07:03.390222" elapsed="0.000382"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:03.399448" level="INFO">GET Request : url=http://10.30.170.209: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=node0k325x19cinu9npru9djms37i5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:03.400051" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-08-10T02:07:03.400214" 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-08-10T02:07:03.391586" elapsed="0.008664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.403643" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:03.400477" elapsed="0.003307"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.407719" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-08-10T02:07:03.407230" elapsed="0.000519"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-08-10T02:07:03.407798" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:03.407994" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-08-10T02:07:03.404046" elapsed="0.003974"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.408460" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:03.408155" elapsed="0.000372"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:07:03.408880" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-08-10T02:07:03.408662" elapsed="0.000246"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-08-10T02:07:03.409269" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:07:03.409044" elapsed="0.000252"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:07:03.409646" 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-08-10T02:07:03.409451" elapsed="0.000222"/>
</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-08-10T02:07:03.410028" elapsed="0.000342"/>
</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-08-10T02:07:03.409861" elapsed="0.000548"/>
</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-08-10T02:07:03.410613" elapsed="0.000307"/>
</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-08-10T02:07:03.410501" elapsed="0.000456"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-08-10T02:07:03.409724" elapsed="0.001263"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-08-10T02:07:03.391275" elapsed="0.019764"/>
</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-08-10T02:07:03.390757" elapsed="0.020324"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:03.462315" 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-08-10T02:07:03.411217" elapsed="0.051459"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:03.488820" level="INFO">_uuid               : 09b0842a-60a8-4a2a-ba24-75a10f9f2c1e
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          : "0a:66:76:b2:94:ff"
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=511, tx_dropped=0, tx_errors=0, tx_packets=6}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-08-10T02:07:03.488987" level="INFO">${output} = _uuid               : 09b0842a-60a8-4a2a-ba24-75a10f9f2c1e
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-08-10T02:07:03.463040" elapsed="0.025977"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.489569" level="INFO">_uuid               : 09b0842a-60a8-4a2a-ba24-75a10f9f2c1e
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          : "0a:66:76:b2:94:ff"
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=511, tx_dropped=0, tx_errors=0, tx_packets=6}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:03.489181" elapsed="0.000448"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:03.491823" 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-08-10T02:07:03.489765" elapsed="0.002114"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:03.517994" level="INFO">_uuid               : 00c72552-6dbc-47f4-b7a8-b3d2fd0f4255
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          : "06:8c:0f:de:c9:71"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=601, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=7, tx_bytes=511, tx_dropped=0, tx_errors=0, tx_packets=6}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-08-10T02:07:03.518104" level="INFO">${output} = _uuid               : 00c72552-6dbc-47f4-b7a8-b3d2fd0f4255
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-08-10T02:07:03.492022" elapsed="0.026109"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.518583" level="INFO">_uuid               : 00c72552-6dbc-47f4-b7a8-b3d2fd0f4255
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          : "06:8c:0f:de:c9:71"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=601, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=7, tx_bytes=511, tx_dropped=0, tx_errors=0, tx_packets=6}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:03.518273" elapsed="0.000374"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-08-10T02:07:03.382962" elapsed="0.135835"/>
</test>
<test id="s1-s2-s2-t4" name="Link Up" line="69">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:03.521118" 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-08-10T02:07:03.519664" elapsed="0.001510"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:03.533263" 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-08-10T02:07:03.521312" elapsed="0.012009"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.533890" 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-08-10T02:07:03.533481" elapsed="0.000470"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:03.542369" level="INFO">GET Request : url=http://10.30.170.209: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=node0k325x19cinu9npru9djms37i5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:03.542928" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-08-10T02:07:03.543102" 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-08-10T02:07:03.535576" elapsed="0.007573"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.546672" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:03.543398" elapsed="0.003406"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.551098" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-08-10T02:07:03.550297" elapsed="0.000831"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-08-10T02:07:03.551185" elapsed="0.000050"/>
</return>
<msg time="2026-08-10T02:07:03.551435" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-08-10T02:07:03.547074" elapsed="0.004389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.551886" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:03.551601" elapsed="0.000352"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:07:03.552315" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-08-10T02:07:03.552090" elapsed="0.000270"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-08-10T02:07:03.552729" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:07:03.552501" elapsed="0.000255"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:07:03.553076" 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-08-10T02:07:03.552891" elapsed="0.000211"/>
</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-08-10T02:07:03.553473" elapsed="0.000355"/>
</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-08-10T02:07:03.553349" elapsed="0.000518"/>
</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-08-10T02:07:03.554082" elapsed="0.000334"/>
</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-08-10T02:07:03.553963" elapsed="0.000493"/>
</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-08-10T02:07:03.554674" elapsed="0.000310"/>
</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-08-10T02:07:03.554559" elapsed="0.000464"/>
</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-08-10T02:07:03.555264" elapsed="0.000334"/>
</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-08-10T02:07:03.555147" elapsed="0.000491"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-08-10T02:07:03.553163" elapsed="0.002505"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-08-10T02:07:03.535206" elapsed="0.020517"/>
</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-08-10T02:07:03.534121" elapsed="0.021644"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-08-10T02:07:03.519196" elapsed="0.036676"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:07:03.556452" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:07:03.556370" elapsed="0.000155"/>
</kw>
<doc>Test suite for RESTCONF Topology</doc>
<status status="PASS" start="2026-08-10T02:07:01.236291" elapsed="2.320267"/>
</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-08-10T02:07:03.587812" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ecb766d0&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-08-10T02:07:03.587456" elapsed="0.000551"/>
</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-08-10T02:07:03.613088" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:07:03.613813" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01ew52k8jicdm410y0izztqx8666.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:07:03 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":44242,"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":"16","active-flows":1,"packets-matched":"15"},"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":"15","byte-count":"1277","duration":{"second":3,"nanosecond":20000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:03.614109" 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-08-10T02:07:03.595006" elapsed="0.019142"/>
</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-08-10T02:07:03.614731" elapsed="0.000077"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:03.614275" elapsed="0.000581"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.620536" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44242,"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":"16","active-flows":1,"packets-matched":"15"},"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":"15","byte-count":"1277","duration":{"second":3,"nanosecond":20000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:01.993Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"52:33:7e:3a:b6:c8","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":"8","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":277000000},"bytes":{"transmitted":"686","received":"686"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"32:03:e6:d0:ac:13","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":"8","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":276000000},"bytes":{"transmitted":"686","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:2d:ef:c7:7e:4b","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":"8","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":275000000},"bytes":{"transmitted":"686","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:67:e9:f7:47:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":264000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:07:02.031Z"}},{"id":"openflow:1","flow-node-inventory:port-number":44240,"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":"15","active-flows":1,"packets-matched":"13"},"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":"13","byte-count":"1108","duration":{"second":3,"nanosecond":7000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:01.990Z"},"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":"0a:66:76:b2:94:ff","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":"fa:53:99:31:3d:47","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":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":273000000},"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:8c:0f:de:c9:71","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":3,"nanosecond":283000000},"bytes":{"transmitted":"686","received":"686"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:07:02.024Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44248,"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":"17","active-flows":1,"packets-matched":"15"},"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":"15","byte-count":"1273","duration":{"second":2,"nanosecond":993000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:01.984Z"},"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":"6a:e8:6e:c1:69:8f","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":"d2:26:d8:2e:07:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":244000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:2e:d6:a2:29:a5","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":"8","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":259000000},"bytes":{"transmitted":"686","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"5e:94:81:38:86:75","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":"8","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":259000000},"bytes":{"transmitted":"686","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:07:02.025Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:03.615078" elapsed="0.006860"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:03.614894" elapsed="0.007096"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:03.614244" elapsed="0.007777"/>
</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-08-10T02:07:03.622190" elapsed="0.000261"/>
</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-08-10T02:07:03.622928" elapsed="0.002779"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-08-10T02:07:03.622710" elapsed="0.003037"/>
</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-08-10T02:07:03.625944" elapsed="0.002405"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-08-10T02:07:03.625828" elapsed="0.002563"/>
</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-08-10T02:07:03.628588" elapsed="0.002371"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-08-10T02:07:03.628472" elapsed="0.002527"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:03.622532" elapsed="0.008497"/>
</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-08-10T02:07:03.594604" elapsed="0.036478"/>
</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-08-10T02:07:03.588589" elapsed="0.042542"/>
</kw>
<doc>Get the stats for all nodes</doc>
<status status="PASS" start="2026-08-10T02:07:03.588084" elapsed="0.043159"/>
</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-08-10T02:07:03.646851" level="INFO">GET Request : url=http://10.30.170.209: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=node01ew52k8jicdm410y0izztqx8666.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:03.647547" level="INFO">GET Response : url=http://10.30.170.209: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":44240,"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":"15","active-flows":1,"packets-matched":"13"},"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":"13","byte-count":"1108","duration":{"second":3,"nanosecond":7000000}},"flags":"SEND_FLOW_REM"}]},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"ope... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:03.647831" 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-08-10T02:07:03.635253" elapsed="0.012614"/>
</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-08-10T02:07:03.648172" elapsed="0.005256"/>
</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-08-10T02:07:03.653747" elapsed="0.003653"/>
</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-08-10T02:07:03.634961" elapsed="0.022503"/>
</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-08-10T02:07:03.631898" elapsed="0.025611"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-08-10T02:07:03.631500" elapsed="0.026118"/>
</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-08-10T02:07:03.670755" level="INFO">GET Request : url=http://10.30.170.209: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=node01ew52k8jicdm410y0izztqx8666.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:03.671266" level="INFO">GET Response : url=http://10.30.170.209: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":44248,"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":"17","active-flows":1,"packets-matched":"15"},"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":"15","byte-count":"1273","duration":{"second":2,"nanosecond":993000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:03.671496" 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-08-10T02:07:03.661604" elapsed="0.009918"/>
</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-08-10T02:07:03.671671" elapsed="0.004897"/>
</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-08-10T02:07:03.676887" elapsed="0.004092"/>
</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-08-10T02:07:03.661295" elapsed="0.019747"/>
</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-08-10T02:07:03.658246" elapsed="0.022841"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-08-10T02:07:03.657849" elapsed="0.023346"/>
</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-08-10T02:07:03.696121" level="INFO">GET Request : url=http://10.30.170.209: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=node01ew52k8jicdm410y0izztqx8666.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:03.696773" level="INFO">GET Response : url=http://10.30.170.209: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":44242,"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":"16","active-flows":1,"packets-matched":"15"},"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":"15","byte-count":"1277","duration":{"second":3,"nanosecond":20000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:03.697054" 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-08-10T02:07:03.685174" elapsed="0.011917"/>
</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-08-10T02:07:03.697298" elapsed="0.003272"/>
</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-08-10T02:07:03.700772" elapsed="0.007433"/>
</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-08-10T02:07:03.684884" elapsed="0.023386"/>
</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-08-10T02:07:03.681842" elapsed="0.026475"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-08-10T02:07:03.681446" elapsed="0.026999"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:07:03.708957" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:07:03.708878" elapsed="0.000151"/>
</kw>
<doc>Test suite for RESTCONF statistics</doc>
<status status="PASS" start="2026-08-10T02:07:03.557295" elapsed="0.151765"/>
</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-08-10T02:07:03.740210" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777eca41b50&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-08-10T02:07:03.739886" elapsed="0.000503"/>
</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-08-10T02:07:03.757474" level="INFO">PUT Request : url=http://10.30.170.209: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-08-10T02:07:03.757605" level="INFO">PUT Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node0p2kdygjbr6og4zf7mnnblp9u7.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:07:03 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:03.757824" 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-08-10T02:07:03.740908" elapsed="0.016973"/>
</kw>
<doc>Push a flow through REST-API</doc>
<status status="PASS" start="2026-08-10T02:07:03.740457" elapsed="0.017681"/>
</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-08-10T02:07:03.768493" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:03.768716" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:03.768850" 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-08-10T02:07:03.759694" elapsed="0.009192"/>
</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-08-10T02:07:03.769090" elapsed="0.003067"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:07:03.758687" elapsed="0.013626"/>
</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-08-10T02:07:03.773671" 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-08-10T02:07:03.773270" 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-08-10T02:07:03.784315" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:03.784604" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:03.784735" 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-08-10T02:07:03.778068" elapsed="0.006703"/>
</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-08-10T02:07:03.785284" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:03.784886" elapsed="0.000503"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:03.788369" 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-08-10T02:07:03.785595" elapsed="0.002842"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:03.785427" elapsed="0.003058"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:03.784856" elapsed="0.003660"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:03.788974" level="FAIL">Url: http://10.30.170.209: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-08-10T02:07:03.788684" elapsed="0.000850">Url: http://10.30.170.209: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-08-10T02:07:03.789873" elapsed="0.000028"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-08-10T02:07:03.789714" elapsed="0.000234"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-08-10T02:07:03.789633" elapsed="0.000352"/>
</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-08-10T02:07:03.777616" elapsed="0.012508">Url: http://10.30.170.209: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-08-10T02:07:05.806839" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:05.807129" level="INFO">GET Response : url=http://10.30.170.209: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":265000000}},"flags":""}]} 
 </msg>
<msg time="2026-08-10T02:07:05.807246" 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-08-10T02:07:05.798224" elapsed="0.009049"/>
</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-08-10T02:07:05.807732" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:05.807404" elapsed="0.000388"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:05.810850" 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":265000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:05.807957" elapsed="0.003002"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:05.807826" elapsed="0.003194"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:05.807379" elapsed="0.003673"/>
</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-08-10T02:07:05.811223" 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-08-10T02:07:05.811968" elapsed="0.003344"/>
</kw>
<var name="${i}">10.0.10.1</var>
<status status="PASS" start="2026-08-10T02:07:05.811774" elapsed="0.003623"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:05.811584" elapsed="0.003859"/>
</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-08-10T02:07:05.796999" elapsed="0.018521"/>
</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-08-10T02:07:03.773913" elapsed="2.041679"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:07:03.772655" elapsed="2.043191"/>
</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-08-10T02:07:05.852100" level="INFO">PUT Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.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-08-10T02:07:05.852231" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:05.852489" 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-08-10T02:07:05.816664" elapsed="0.035886"/>
</kw>
<doc>Push a flow through REST-API</doc>
<status status="PASS" start="2026-08-10T02:07:05.816196" elapsed="0.036621"/>
</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-08-10T02:07:05.863925" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:05.864287" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:05.864463" 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-08-10T02:07:05.854433" elapsed="0.010069"/>
</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-08-10T02:07:05.864711" elapsed="0.002970"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:07:05.853388" elapsed="0.014453"/>
</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-08-10T02:07:05.869070" 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-08-10T02:07:05.868699" elapsed="0.000409"/>
</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-08-10T02:07:05.881972" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:05.882150" level="INFO">GET Response : url=http://10.30.170.209: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":265000000}},"flags":""}]} 
 </msg>
<msg time="2026-08-10T02:07:05.882247" 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-08-10T02:07:05.874401" elapsed="0.007873"/>
</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-08-10T02:07:05.882676" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:05.882380" elapsed="0.000355"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:05.885400" 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":265000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:05.882883" elapsed="0.002588"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:05.882760" elapsed="0.002762"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:05.882358" elapsed="0.003237"/>
</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-08-10T02:07:05.885781" elapsed="0.000238"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:07:05.889507" 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":265000000}},"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-08-10T02:07:05.886462" elapsed="0.003153">'{"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":265000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-08-10T02:07:05.886275" elapsed="0.003444">'{"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":265000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-08-10T02:07:05.886098" elapsed="0.003719">'{"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":265000000}},"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-08-10T02:07:05.873741" elapsed="0.016220">'{"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":265000000}},"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-08-10T02:07:07.906231" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:07.906730" level="INFO">GET Response : url=http://10.30.170.209: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":265000000}},"flags":""}]} 
 </msg>
<msg time="2026-08-10T02:07:07.906959" 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-08-10T02:07:07.897990" elapsed="0.009027"/>
</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-08-10T02:07:07.907922" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:07.907214" elapsed="0.000836"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:07.913544" 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":265000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:07.908407" elapsed="0.005251"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:07.908104" elapsed="0.005635"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:07.907168" elapsed="0.006620"/>
</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-08-10T02:07:07.914111" elapsed="0.000420"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:07:07.917308" 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":265000000}},"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-08-10T02:07:07.915170" elapsed="0.002239">'{"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":265000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-08-10T02:07:07.914948" elapsed="0.002597">'{"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":265000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-08-10T02:07:07.914655" elapsed="0.002953">'{"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":265000000}},"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-08-10T02:07:07.896745" elapsed="0.020963">'{"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":265000000}},"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-08-10T02:07:09.934678" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:09.934923" level="INFO">GET Response : url=http://10.30.170.209: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":183000000}},"flags":""}]} 
 </msg>
<msg time="2026-08-10T02:07:09.935039" 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-08-10T02:07:09.926471" elapsed="0.008596"/>
</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-08-10T02:07:09.935488" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:09.935158" elapsed="0.000388"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:09.938441" 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":183000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:09.935698" elapsed="0.002815"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:09.935572" elapsed="0.002989"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:09.935136" elapsed="0.003456"/>
</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-08-10T02:07:09.938760" elapsed="0.000238"/>
</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-08-10T02:07:09.939477" elapsed="0.002968"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-08-10T02:07:09.939279" elapsed="0.003224"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:09.939088" elapsed="0.003459"/>
</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-08-10T02:07:09.925306" elapsed="0.017317"/>
</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-08-10T02:07:05.869359" elapsed="4.073334"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:07:05.868072" elapsed="4.074796"/>
</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-08-10T02:07:10.121932" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:10.122039" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:10.122249" 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-08-10T02:07:09.943686" elapsed="0.178623"/>
</kw>
<doc>Remove a flow</doc>
<status status="PASS" start="2026-08-10T02:07:09.943141" elapsed="0.179620"/>
</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-08-10T02:07:10.132951" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:10.133191" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:10.133325" 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-08-10T02:07:10.124060" elapsed="0.009335"/>
</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-08-10T02:07:10.133608" elapsed="0.002801"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:07:10.123125" elapsed="0.013444"/>
</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-08-10T02:07:10.137916" 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-08-10T02:07:10.137545" elapsed="0.000410"/>
</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-08-10T02:07:10.154832" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:10.155030" level="INFO">GET Response : url=http://10.30.170.209: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,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"},"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":183000000}},"flags":""}]}]} 
 </msg>
<msg time="2026-08-10T02:07:10.155142" 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-08-10T02:07:10.146035" elapsed="0.009140"/>
</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-08-10T02:07:10.155745" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:10.155311" elapsed="0.000512"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:10.158891" level="INFO">{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"},"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":183000000}},"flags":""}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:10.156023" elapsed="0.002941"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:10.155857" elapsed="0.003155"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:10.155278" elapsed="0.003764"/>
</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-08-10T02:07:10.159384" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:10.159304" elapsed="0.000143"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:10.159282" elapsed="0.000196"/>
</if>
<status status="NOT RUN" start="2026-08-10T02:07:10.159120" elapsed="0.000389"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:10.159097" elapsed="0.000440"/>
</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-08-10T02:07:10.159700" elapsed="0.000231"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:07:10.163465" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"},"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":183000000}},"flags":""}]}]}' 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-08-10T02:07:10.160429" elapsed="0.003150">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"},"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":183000000}},"flags":""}]}]}' contains '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-08-10T02:07:10.160183" elapsed="0.003551">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"},"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":183000000}},"flags":""}]}]}' contains '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-08-10T02:07:10.160006" elapsed="0.003817">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"},"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":183000000}},"flags":""}]}]}' 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-08-10T02:07:10.145566" elapsed="0.018395">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"},"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":183000000}},"flags":""}]}]}' 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-08-10T02:07:12.185629" level="INFO">GET Request : url=http://10.30.170.209: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=node0p2kdygjbr6og4zf7mnnblp9u7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:12.185897" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:12.186015" 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-08-10T02:07:12.176819" elapsed="0.009225"/>
</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-08-10T02:07:12.186648" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:12.186153" elapsed="0.000579"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:12.189863" 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-08-10T02:07:12.186949" elapsed="0.003001"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:12.186770" elapsed="0.003231"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:12.186126" elapsed="0.003906"/>
</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-08-10T02:07:12.190392" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:12.190309" elapsed="0.000145"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:12.190289" elapsed="0.000195"/>
</if>
<status status="NOT RUN" start="2026-08-10T02:07:12.190115" elapsed="0.000401"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:12.190092" elapsed="0.000452"/>
</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-08-10T02:07:12.190713" elapsed="0.000248"/>
</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-08-10T02:07:12.191453" elapsed="0.003004"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-08-10T02:07:12.191242" elapsed="0.003269"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-08-10T02:07:12.191046" elapsed="0.003506"/>
</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-08-10T02:07:12.176110" elapsed="0.018507"/>
</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-08-10T02:07:10.138167" elapsed="2.056505"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-08-10T02:07:10.136889" elapsed="2.057925"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:07:12.195497" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:07:12.195405" elapsed="0.000165"/>
</kw>
<doc>Test suite for RESTCONF FRM</doc>
<status status="PASS" start="2026-08-10T02:07:03.709778" elapsed="8.485825"/>
</suite>
<kw name="Stop Mininet" owner="Utils" type="TEARDOWN">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:12.197163" 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-08-10T02:07:12.196944" elapsed="0.000341"/>
</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-08-10T02:07:12.197452" elapsed="0.000148"/>
</kw>
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-08-10T02:07:12.197732" elapsed="0.000157"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:12.200152" 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-08-10T02:07:12.198014" elapsed="0.002193"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:12.508997" 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 14.002 seconds
[?2004h[jenkins@releng-14419-806-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-08-10T02:07:12.200359" elapsed="0.308731"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:07:12.509284" elapsed="0.000235"/>
</kw>
<doc>Cleanup/Shutdown work that should be done at the completion of all
tests</doc>
<status status="PASS" start="2026-08-10T02:07:12.196679" elapsed="0.312902"/>
</kw>
<doc>Test suite for MD-SAL NSF mininet OF13</doc>
<status status="PASS" start="2026-08-10T02:06:55.949576" elapsed="16.560045"/>
</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-08-10T02:07:12.542774" 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-08-10T02:07:12.542508" elapsed="0.000316"/>
</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-08-10T02:07:12.545015" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:12.544759" elapsed="0.000314"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:12.544735" elapsed="0.000363"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:07:12.545404" 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-08-10T02:07:12.545514" 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-08-10T02:07:12.545224" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:12.546046" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:07:12.545665" elapsed="0.000426"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:07:12.546618" 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-08-10T02:07:12.546220" elapsed="0.000424"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:07:12.547558" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:07:12.547636" 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-08-10T02:07:12.547247" elapsed="0.000413"/>
</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-08-10T02:07:12.547789" elapsed="0.000324"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:07:12.548922" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:07:12.878758" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:06:38 UTC 2026

  System load:  0.02               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:06:58 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:07:12.548604" elapsed="0.330292"/>
</kw>
<msg time="2026-08-10T02:07:12.878991" 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-08-10T02:07:12.548254" elapsed="0.330824"/>
</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-08-10T02:07:12.546895" elapsed="0.332326"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:07:12.879813" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:07:14.090369" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:07:14.090905" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:07:14.091009" 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-08-10T02:07:12.879516" elapsed="1.211550"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:07:14.091510" elapsed="0.000606"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:14.093120" 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-08-10T02:07:14.092476" elapsed="0.000765"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:07:14.093761" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:14.093453" elapsed="0.000418"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:14.093398" elapsed="0.000525"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:07:14.094280" elapsed="0.000120"/>
</return>
<status status="PASS" start="2026-08-10T02:07:14.094043" elapsed="0.000436"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:14.094010" elapsed="0.000523"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:07:14.094611" 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-08-10T02:07:14.099315" elapsed="0.000402"/>
</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-08-10T02:07:14.099854" elapsed="0.000165"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:07:14.100136" elapsed="0.000096"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:07:14.095257" elapsed="0.005028"/>
</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-08-10T02:07:12.544240" elapsed="1.556156"/>
</kw>
<msg time="2026-08-10T02:07:14.100452" 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-08-10T02:07:12.543686" elapsed="1.556817"/>
</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-08-10T02:07:12.543238" elapsed="1.557346"/>
</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-08-10T02:07:14.102469" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:14.102190" elapsed="0.000341"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:14.102172" elapsed="0.000382"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:07:14.102813" 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-08-10T02:07:14.102917" 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-08-10T02:07:14.102673" elapsed="0.000270"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:14.103458" 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.177" 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-08-10T02:07:14.103063" elapsed="0.000443"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:07:14.104001" 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-08-10T02:07:14.103632" elapsed="0.000395"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:07:14.104825" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:07:14.104903" 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-08-10T02:07:14.104543" elapsed="0.000384"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:07:14.105099" elapsed="0.000344"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:07:14.106234" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:07:14.476810" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:06:38 UTC 2026

  System load:  0.02               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:07:12 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:07:14.105913" elapsed="0.371075"/>
</kw>
<msg time="2026-08-10T02:07:14.477084" 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-08-10T02:07:14.105585" elapsed="0.371590"/>
</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-08-10T02:07:14.104212" elapsed="0.373095"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:07:14.477873" 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-08-10T02:07:14.520579" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:07:14.520839" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:07:14.520937" 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-08-10T02:07:14.477575" elapsed="0.043412"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:07:14.521289" elapsed="0.000536"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:14.522840" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:14.522155" elapsed="0.000778"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:07:14.523486" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:14.523109" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:14.523056" elapsed="0.000596"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:07:14.524008" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:07:14.523771" elapsed="0.000368"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:14.523737" elapsed="0.000452"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:07:14.524263" 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-08-10T02:07:14.528780" elapsed="0.000332"/>
</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-08-10T02:07:14.529247" elapsed="0.000186"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:07:14.529551" elapsed="0.000096"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:07:14.524955" elapsed="0.004742"/>
</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-08-10T02:07:14.101713" elapsed="0.428077"/>
</kw>
<msg time="2026-08-10T02:07:14.529843" 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-08-10T02:07:14.101158" elapsed="0.428734"/>
</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-08-10T02:07:14.100735" elapsed="0.429238"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:12.542980" elapsed="1.987053"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:07:14.530573" 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-08-10T02:07:14.530166" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:14.531079" 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-08-10T02:07:14.530753" elapsed="0.000368"/>
</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-08-10T02:07:14.532780" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:07:14.532931" 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-08-10T02:07:14.532489" elapsed="0.000467"/>
</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-08-10T02:07:14.533085" elapsed="0.000335"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:07:14.534195" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:07:14.856939" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:06:38 UTC 2026

  System load:  0.02               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:07:14 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:07:14.533883" elapsed="0.323184"/>
</kw>
<msg time="2026-08-10T02:07:14.857143" 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-08-10T02:07:14.533559" elapsed="0.323653"/>
</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-08-10T02:07:14.532065" elapsed="0.325260"/>
</kw>
<msg time="2026-08-10T02:07:14.857404" 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-08-10T02:07:14.531702" elapsed="0.325751"/>
</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-08-10T02:07:14.531305" elapsed="0.326223"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:07:14.858147" level="INFO">Executing command 'sudo ovs-vsctl set-manager ptcp:6644'.</msg>
<msg time="2026-08-10T02:07:14.880297" 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-08-10T02:07:14.857727" elapsed="0.022742"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:14.921880" level="INFO">sudo mn --controller=remote,ip=10.30.170.209 --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-08-10T02:07:14.880777" elapsed="0.041168"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:15.068117" level="INFO">[?2004l*** Creating network
*** Adding controller
Connecting to remote controller at 10.30.170.209: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-08-10T02:07:14.922095" elapsed="0.146093"/>
</kw>
<doc>Basic setup/cleanup work that can be done safely before any system
is run.</doc>
<status status="PASS" start="2026-08-10T02:07:12.542080" elapsed="2.526175"/>
</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-08-10T02:07:15.224208" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ec9d0f90&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-08-10T02:07:15.223842" elapsed="0.000575"/>
</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-08-10T02:07:15.268576" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:07:15.268843" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:07:15 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '101'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]} 
 </msg>
<msg time="2026-08-10T02:07:15.269210" 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-08-10T02:07:15.228504" elapsed="0.040741"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:15.271584" level="INFO">{"opendaylight-inventory: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-08-10T02:07:15.269501" elapsed="0.002131"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:07:15.274068" level="FAIL">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}' 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-08-10T02:07:15.271788" elapsed="0.002473">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}' 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-08-10T02:07:15.274449" elapsed="0.000024"/>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:07:15.228385" elapsed="0.046152">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}' 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-08-10T02:07:15.226539" elapsed="0.048064">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}' 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-08-10T02:07:15.225197" elapsed="0.049526">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}' 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-08-10T02:07:16.304078" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:16.305151" level="INFO">GET Response : url=http://10.30.170.209: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":56896,"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":"0","active-flows":1,"packets-matched":"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":2000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:16.305766" 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-08-10T02:07:16.281956" elapsed="0.023862"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.315154" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":56896,"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":"0","active-flows":1,"packets-matched":"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":2000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:15.258Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"e6:e8:e1:56:0a:70","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":233000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:be:88:67:c4:4b","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":227000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"56:84:95:0e:74:b0","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":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":233000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:07:15.293Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.306324" elapsed="0.009516"/>
</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-08-10T02:07:16.316200" elapsed="0.003704"/>
</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-08-10T02:07:16.320152" elapsed="0.002338"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:07:16.281777" elapsed="0.040759"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:07:16.278969" elapsed="0.043623"/>
</for>
<arg>${1}</arg>
<doc>Check all switches and stats in operational inventory</doc>
<status status="PASS" start="2026-08-10T02:07:16.275743" elapsed="0.046958"/>
</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-08-10T02:07:15.224587" elapsed="1.098180"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:16.325641" 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-08-10T02:07:16.322940" elapsed="0.002765"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:16.356157" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=1.075s, table=0, n_packets=4, n_bytes=352, 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-08-10T02:07:16.325869" elapsed="0.030390"/>
</kw>
<doc>Initiate tcp connection with controller</doc>
<status status="PASS" start="2026-08-10T02:07:15.223147" elapsed="1.133228"/>
</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-08-10T02:07:16.357875" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.357527" elapsed="0.000395"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.362180" 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-08-10T02:07:16.362489" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.361999" elapsed="0.000520"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.363253" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9cfe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.362681" elapsed="0.000602"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.363799" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.363471" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.364258" 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-08-10T02:07:16.363979" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.364735" 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-08-10T02:07:16.364458" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.367367" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.364914" elapsed="0.002493"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.367969" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.367601" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.368632" 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-08-10T02:07:16.368168" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.369152" 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-08-10T02:07:16.368833" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.369670" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.369362" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.370175" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.369866" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.370702" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9cfe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.370389" 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-08-10T02:07:16.361592" elapsed="0.009213"/>
</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-08-10T02:07:16.378294" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.378033" elapsed="0.000342"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.402834" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.403007" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.403391" 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-08-10T02:07:16.378517" elapsed="0.024943"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.409030" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.403906" elapsed="0.005223"/>
</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-08-10T02:07:16.377600" elapsed="0.031678"/>
</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-08-10T02:07:16.370962" elapsed="0.038477"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.357318" elapsed="0.052209"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.410696" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.410097" 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-08-10T02:07:16.415107" 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-08-10T02:07:16.415382" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.414934" elapsed="0.000479"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.416047" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.415570" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.416547" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.416233" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.416997" 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-08-10T02:07:16.416724" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.417461" 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-08-10T02:07:16.417173" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.418415" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.417637" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.418959" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.418620" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.419600" 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-08-10T02:07:16.419231" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.420104" 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-08-10T02:07:16.419792" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.420623" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.420302" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.421124" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.420818" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.421645" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.421320" 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-08-10T02:07:16.414554" elapsed="0.007189"/>
</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-08-10T02:07:16.429271" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:16.429017" elapsed="0.000314"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.445989" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.446151" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.446459" 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-08-10T02:07:16.429483" elapsed="0.017038"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.451541" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.446935" elapsed="0.004703"/>
</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-08-10T02:07:16.428598" elapsed="0.023179"/>
</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-08-10T02:07:16.421896" elapsed="0.030004"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.409797" elapsed="0.042188"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.453122" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.452573" elapsed="0.000645"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.459643" 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-08-10T02:07:16.460627" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.459284" elapsed="0.001458"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.462668" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbefba0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.461322" elapsed="0.001412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.463869" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.463092" elapsed="0.000836"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.464958" 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-08-10T02:07:16.464278" elapsed="0.000738"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.466016" 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-08-10T02:07:16.465396" elapsed="0.000677"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.468115" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.466453" elapsed="0.001760"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.469030" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.468515" elapsed="0.000576"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.469759" 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-08-10T02:07:16.469306" elapsed="0.000510"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.470484" 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-08-10T02:07:16.470026" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.471171" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.470753" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.471916" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.471484" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.472643" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbefba0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.472188" 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-08-10T02:07:16.458553" elapsed="0.014249"/>
</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-08-10T02:07:16.481473" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:16.481182" elapsed="0.000350"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.497772" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.498010" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.498231" 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-08-10T02:07:16.481676" elapsed="0.016613"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.503639" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.498687" elapsed="0.005051"/>
</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-08-10T02:07:16.480716" elapsed="0.023151"/>
</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-08-10T02:07:16.473030" elapsed="0.030952"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.452250" elapsed="0.051815"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.505217" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.504661" elapsed="0.000655"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.510622" 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-08-10T02:07:16.510772" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.510454" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.511366" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec450&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.510952" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.511833" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.511556" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.512275" 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-08-10T02:07:16.512008" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.512745" 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-08-10T02:07:16.512477" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.513566" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.512918" elapsed="0.000679"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.514067" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.513753" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.514626" 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-08-10T02:07:16.514258" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.515124" 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-08-10T02:07:16.514815" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.515661" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.515313" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.516163" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.515859" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.516679" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec450&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.516373" 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-08-10T02:07:16.510095" elapsed="0.006679"/>
</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-08-10T02:07:16.525622" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.525367" elapsed="0.000376"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.538861" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.538952" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.539082" 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-08-10T02:07:16.525874" elapsed="0.013244"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.543530" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.539372" elapsed="0.004279"/>
</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-08-10T02:07:16.524949" elapsed="0.018834"/>
</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-08-10T02:07:16.516919" elapsed="0.026978"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.504325" elapsed="0.039653"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.545073" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.544519" elapsed="0.000653"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.550465" 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-08-10T02:07:16.550609" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.550306" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.551191" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.550789" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.551684" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.551386" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.552125" 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-08-10T02:07:16.551859" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.552583" 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-08-10T02:07:16.552297" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.553421" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.552754" elapsed="0.000697"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.553919" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.553606" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.554433" 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-08-10T02:07:16.554109" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.554933" 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-08-10T02:07:16.554624" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.555437" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.555121" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.556020" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.555712" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.556543" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.556215" 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-08-10T02:07:16.549975" elapsed="0.006664"/>
</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-08-10T02:07:16.563882" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.563619" elapsed="0.000325"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.578056" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.578202" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.578458" 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-08-10T02:07:16.564071" elapsed="0.014449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.583602" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.578872" elapsed="0.004856"/>
</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-08-10T02:07:16.563156" elapsed="0.020702"/>
</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-08-10T02:07:16.556785" elapsed="0.027187"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.544195" elapsed="0.039859"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.585137" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.584589" elapsed="0.000647"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.590476" 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-08-10T02:07:16.590614" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.590317" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.591228" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.590826" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.591721" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.591430" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.592178" 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-08-10T02:07:16.591902" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.592641" 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-08-10T02:07:16.592370" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.593464" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.592814" elapsed="0.000680"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.593966" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.593649" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.594485" 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-08-10T02:07:16.594158" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.594984" 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-08-10T02:07:16.594675" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.595488" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.595172" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.596024" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.595710" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.596543" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.596218" 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-08-10T02:07:16.589982" elapsed="0.006658"/>
</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-08-10T02:07:16.603843" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.603566" elapsed="0.000338"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.616804" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.617035" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.617257" 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-08-10T02:07:16.604031" elapsed="0.013287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.622545" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.617743" elapsed="0.004898"/>
</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-08-10T02:07:16.603148" elapsed="0.019625"/>
</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-08-10T02:07:16.596785" elapsed="0.026102"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.584269" elapsed="0.038699"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.624168" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.623547" elapsed="0.000721"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.629153" 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-08-10T02:07:16.629379" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.628947" elapsed="0.000475"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.630228" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0680&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.629636" elapsed="0.000631"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.630889" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.630501" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.631534" 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-08-10T02:07:16.631135" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.632202" 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-08-10T02:07:16.631817" elapsed="0.000422"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.633175" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.632436" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.633708" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.633381" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.634203" 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-08-10T02:07:16.633898" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.634723" 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-08-10T02:07:16.634410" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.635212" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.634914" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.635744" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.635427" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.636247" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0680&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.635939" 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-08-10T02:07:16.628470" elapsed="0.007893"/>
</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-08-10T02:07:16.643582" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.643312" elapsed="0.000374"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.655070" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.655169" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.655318" 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-08-10T02:07:16.643828" elapsed="0.011556"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.660034" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.655609" elapsed="0.004527"/>
</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-08-10T02:07:16.642911" elapsed="0.017356"/>
</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-08-10T02:07:16.636512" elapsed="0.023906"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.623193" elapsed="0.037309"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.661590" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.661001" elapsed="0.000690"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.666668" 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-08-10T02:07:16.666817" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.666525" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.667474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89030&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.666997" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.671322" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.667651" elapsed="0.003713"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.671827" 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-08-10T02:07:16.671524" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.672282" 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-08-10T02:07:16.672012" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.673278" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.672475" elapsed="0.000838"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.673811" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.673489" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.674307" 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-08-10T02:07:16.674003" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.674822" 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-08-10T02:07:16.674515" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.675397" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.675076" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.678117" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.675593" elapsed="0.002571"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.678645" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89030&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.678315" 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-08-10T02:07:16.666168" elapsed="0.012575"/>
</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-08-10T02:07:16.685984" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.685731" elapsed="0.000319"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.701131" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.701288" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.701544" 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-08-10T02:07:16.686177" elapsed="0.015424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.706669" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.701954" elapsed="0.004814"/>
</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-08-10T02:07:16.685313" elapsed="0.021586"/>
</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-08-10T02:07:16.678889" elapsed="0.028123"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.660720" elapsed="0.046376"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.708400" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.707722" 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-08-10T02:07:16.711884" 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-08-10T02:07:16.712032" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.711738" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.712644" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe35b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.712212" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.713096" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.712821" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.713561" 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-08-10T02:07:16.713271" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.714003" 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-08-10T02:07:16.713736" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.714921" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.714177" elapsed="0.000775"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.715440" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.715106" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.715971" 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-08-10T02:07:16.715633" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.716494" 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-08-10T02:07:16.716167" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.716981" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.716684" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.717494" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.717174" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.717989" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe35b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.717688" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:16.711405" elapsed="0.006679"/>
</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-08-10T02:07:16.725377" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.725111" elapsed="0.000334"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.736579" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.736731" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.736863" 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-08-10T02:07:16.725573" elapsed="0.011326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.740060" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.737119" elapsed="0.003002"/>
</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-08-10T02:07:16.724712" elapsed="0.015490"/>
</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-08-10T02:07:16.718229" elapsed="0.022043"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.707432" elapsed="0.032892"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.741006" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.740663" elapsed="0.000403"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.745889" 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-08-10T02:07:16.746074" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.745701" elapsed="0.000413"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.746926" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533c90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.746319" elapsed="0.000645"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.747580" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.747175" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.748218" 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-08-10T02:07:16.747824" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.748862" 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-08-10T02:07:16.748487" elapsed="0.000411"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.750167" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.749103" elapsed="0.001106"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.750887" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.750448" elapsed="0.000497"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.751598" 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-08-10T02:07:16.751152" elapsed="0.000503"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.752363" 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-08-10T02:07:16.751861" elapsed="0.000562"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.752991" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.752631" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.753507" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.753182" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.754002" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533c90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.753700" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:16.745214" elapsed="0.008883"/>
</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-08-10T02:07:16.761330" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.761074" elapsed="0.000374"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.775367" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.775466" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.775594" 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-08-10T02:07:16.761578" elapsed="0.014051"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.780308" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.775852" elapsed="0.004587"/>
</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-08-10T02:07:16.760677" elapsed="0.019890"/>
</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-08-10T02:07:16.754241" elapsed="0.026440"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.740485" elapsed="0.040278"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.781846" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.781260" elapsed="0.000684"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.786821" 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-08-10T02:07:16.786970" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.786685" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.787596" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533d30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.787148" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.788064" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.787774" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.788536" 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-08-10T02:07:16.788246" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.788979" 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-08-10T02:07:16.788713" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.789885" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.789151" elapsed="0.000764"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.790405" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.790070" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.790903" 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-08-10T02:07:16.790597" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.791415" 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-08-10T02:07:16.791092" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.791947" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.791645" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.792493" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.792168" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.792998" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533d30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.792691" 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-08-10T02:07:16.786329" elapsed="0.006765"/>
</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-08-10T02:07:16.800279" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.800001" elapsed="0.000360"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.815112" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.815269" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.815567" 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-08-10T02:07:16.800493" elapsed="0.015133"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.822590" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.815992" elapsed="0.006662"/>
</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-08-10T02:07:16.799600" elapsed="0.023138"/>
</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-08-10T02:07:16.793240" elapsed="0.029571"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.780978" elapsed="0.041884"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.823620" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.823249" 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-08-10T02:07:16.831570" 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-08-10T02:07:16.831734" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.831415" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.832384" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533740&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.831913" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.832848" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.832568" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.833293" 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-08-10T02:07:16.833024" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.833756" 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-08-10T02:07:16.833487" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.834683" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.833929" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.835198" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.834871" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.835714" 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-08-10T02:07:16.835410" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.836239" 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-08-10T02:07:16.835904" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.836749" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.836451" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.837243" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.836941" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.837756" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533740&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.837454" 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-08-10T02:07:16.831030" elapsed="0.006822"/>
</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-08-10T02:07:16.845063" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:16.844805" elapsed="0.000326"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.858472" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.858572" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.858702" 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-08-10T02:07:16.845294" elapsed="0.013443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.862271" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.858962" elapsed="0.003443"/>
</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-08-10T02:07:16.844408" elapsed="0.018129"/>
</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-08-10T02:07:16.838000" elapsed="0.024652"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.823067" elapsed="0.039667"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.863846" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.863258" elapsed="0.000686"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.870498" 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-08-10T02:07:16.870630" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:16.870361" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.871216" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8b380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.870810" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.871686" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.871411" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.872126" 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-08-10T02:07:16.871861" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.872604" 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-08-10T02:07:16.872314" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.873453" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:16.872776" elapsed="0.000707"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.873956" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.873641" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.874466" 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-08-10T02:07:16.874146" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.875018" 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-08-10T02:07:16.874657" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.875534" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.875210" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.876034" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.875728" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.876588" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8b380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.876259" 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-08-10T02:07:16.870012" elapsed="0.006674"/>
</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-08-10T02:07:16.883915" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:16.883665" elapsed="0.000312"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.895387" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.895540" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.895743" 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-08-10T02:07:16.884104" elapsed="0.011695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.900907" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.896150" elapsed="0.004854"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-08-10T02:07:16.883257" elapsed="0.017879"/>
</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-08-10T02:07:16.876833" elapsed="0.024418"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.862971" elapsed="0.038402"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.902049" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.901705" 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-08-10T02:07:16.907081" 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-08-10T02:07:16.907263" 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-08-10T02:07:16.906841" elapsed="0.000462"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.908096" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.907539" elapsed="0.000597"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.908804" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.908409" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.909460" 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-08-10T02:07:16.909059" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.909904" 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-08-10T02:07:16.909636" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.910744" 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-08-10T02:07:16.910077" elapsed="0.000698"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.911247" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.910933" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.911762" 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-08-10T02:07:16.911457" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.912270" 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-08-10T02:07:16.911952" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.912783" 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-08-10T02:07:16.912480" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.913278" 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-08-10T02:07:16.912976" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.913804" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.913499" 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-08-10T02:07:16.906378" elapsed="0.007528"/>
</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-08-10T02:07:16.921114" 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-08-10T02:07:16.920864" elapsed="0.000312"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.937201" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.937467" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.937686" 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-08-10T02:07:16.921303" elapsed="0.016441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.942839" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.938097" elapsed="0.004840"/>
</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-08-10T02:07:16.920462" elapsed="0.022603"/>
</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-08-10T02:07:16.914052" elapsed="0.029125"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.901528" elapsed="0.041732"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.944448" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.943808" elapsed="0.000744"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:16.949699" 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-08-10T02:07:16.949882" 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-08-10T02:07:16.949513" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.950708" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe18f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.950130" elapsed="0.000617"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.951367" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.950956" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.951990" 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-08-10T02:07:16.951614" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.952684" 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-08-10T02:07:16.952232" elapsed="0.000488"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.953727" 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-08-10T02:07:16.952928" elapsed="0.000830"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.954230" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.953913" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.954746" 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-08-10T02:07:16.954439" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.955244" 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-08-10T02:07:16.954936" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.955752" 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-08-10T02:07:16.955453" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.956245" 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-08-10T02:07:16.955945" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.956778" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe18f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.956473" 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-08-10T02:07:16.949024" elapsed="0.007851"/>
</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-08-10T02:07:16.964082" 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-08-10T02:07:16.963836" elapsed="0.000349"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:16.978097" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:16.978244" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:16.978496" 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-08-10T02:07:16.964314" elapsed="0.014241"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.983636" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.978919" elapsed="0.004813"/>
</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-08-10T02:07:16.963441" elapsed="0.020417"/>
</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-08-10T02:07:16.957024" elapsed="0.026946"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.943522" elapsed="0.040531"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.985193" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:16.984635" 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-08-10T02:07:16.988880" 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-08-10T02:07:16.989015" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:16.988747" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:16.989608" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:16.989198" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.990059" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:16.989785" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.990519" 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-08-10T02:07:16.990233" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:16.990960" 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-08-10T02:07:16.990693" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:16.991712" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:16.991133" elapsed="0.000609"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.992210" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.991899" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.992762" 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-08-10T02:07:16.992443" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.993260" 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-08-10T02:07:16.992950" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.993766" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:16.993466" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.994308" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:16.993999" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:16.994830" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:16.994522" 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-08-10T02:07:16.988406" elapsed="0.006521"/>
</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-08-10T02:07:17.002141" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.001892" elapsed="0.000308"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.014797" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.014886" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.015014" 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-08-10T02:07:17.002326" elapsed="0.012724"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.018232" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.015284" elapsed="0.003008"/>
</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-08-10T02:07:17.001492" elapsed="0.016904"/>
</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-08-10T02:07:16.995074" elapsed="0.023395"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-08-10T02:07:16.984266" elapsed="0.034254"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.019177" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.018834" elapsed="0.000404"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.024106" 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-08-10T02:07:17.024305" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.023912" elapsed="0.000457"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.025163" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.024602" elapsed="0.000600"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.025884" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.025495" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.026532" 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-08-10T02:07:17.026133" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.027151" 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-08-10T02:07:17.026776" elapsed="0.000411"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.028175" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.027417" elapsed="0.000800"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.028945" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.028455" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.029632" 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-08-10T02:07:17.029214" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.030129" 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-08-10T02:07:17.029822" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.030640" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.030317" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.031136" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.030833" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.031657" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.031351" 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-08-10T02:07:17.023421" elapsed="0.008331"/>
</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-08-10T02:07:17.039026" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.038776" elapsed="0.000308"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.052468" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.052598" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.052731" 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-08-10T02:07:17.039210" elapsed="0.013556"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.057556" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.053033" elapsed="0.004618"/>
</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-08-10T02:07:17.038377" elapsed="0.019402"/>
</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-08-10T02:07:17.031899" elapsed="0.025993"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.018657" elapsed="0.039316"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.059061" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.058513" elapsed="0.000647"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.063875" 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-08-10T02:07:17.064005" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.063742" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.064595" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.064182" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.065045" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.064773" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.065514" 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-08-10T02:07:17.065223" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.065952" 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-08-10T02:07:17.065687" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.066685" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.066122" elapsed="0.000593"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.067185" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.066873" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.067702" 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-08-10T02:07:17.067399" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.068195" 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-08-10T02:07:17.067890" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.068723" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.068400" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.069216" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.068916" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.069736" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.069425" 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-08-10T02:07:17.063412" elapsed="0.006422"/>
</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-08-10T02:07:17.077096" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.076844" elapsed="0.000350"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.091446" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.091586" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.091785" 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-08-10T02:07:17.077351" elapsed="0.014491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.096911" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.092187" elapsed="0.004820"/>
</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-08-10T02:07:17.076405" elapsed="0.020730"/>
</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-08-10T02:07:17.069982" elapsed="0.027266"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.058195" elapsed="0.039174"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.098033" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.097691" elapsed="0.000404"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.102890" 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-08-10T02:07:17.103086" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.102703" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.103926" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe3380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.103357" elapsed="0.000607"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.104579" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.104174" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.105236" 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-08-10T02:07:17.104862" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.105781" 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-08-10T02:07:17.105515" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.106643" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.105952" elapsed="0.000721"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.107139" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.106825" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.107649" 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-08-10T02:07:17.107329" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.108143" 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-08-10T02:07:17.107837" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.108660" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.108330" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.109200" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.108894" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.109718" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe3380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.109411" 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-08-10T02:07:17.102218" elapsed="0.007596"/>
</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-08-10T02:07:17.117029" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.116779" elapsed="0.000313"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.131056" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.131204" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.131456" 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-08-10T02:07:17.117218" elapsed="0.014298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.136565" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.131869" elapsed="0.004792"/>
</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-08-10T02:07:17.116371" elapsed="0.020491"/>
</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-08-10T02:07:17.109960" elapsed="0.027017"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.097517" elapsed="0.039542"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.137885" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.137539" elapsed="0.000407"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.142733" 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-08-10T02:07:17.142916" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.142546" elapsed="0.000448"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.143800" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2f70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.143208" elapsed="0.000631"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.144460" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.144051" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.145127" 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-08-10T02:07:17.144707" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.145703" 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-08-10T02:07:17.145417" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.146568" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.145876" elapsed="0.000722"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.147062" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.146751" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.147605" 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-08-10T02:07:17.147253" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.148099" 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-08-10T02:07:17.147793" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.148601" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.148286" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.151867" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.151557" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.152381" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2f70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.152059" 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-08-10T02:07:17.142056" elapsed="0.010423"/>
</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-08-10T02:07:17.159658" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.159410" elapsed="0.000310"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.173376" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.173605" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.173813" 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-08-10T02:07:17.159845" elapsed="0.014024"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.178904" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.174218" elapsed="0.004782"/>
</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-08-10T02:07:17.158998" elapsed="0.020129"/>
</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-08-10T02:07:17.152625" elapsed="0.026616"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.137276" elapsed="0.042047"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.180443" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.179859" elapsed="0.000684"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.184553" 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-08-10T02:07:17.184685" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.184413" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.185286" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a610&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.184877" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.185756" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.185482" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.186197" 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-08-10T02:07:17.185931" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.186654" 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-08-10T02:07:17.186388" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.187544" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.186826" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.188038" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.187726" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.188551" 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-08-10T02:07:17.188228" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.189158" 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-08-10T02:07:17.188739" elapsed="0.000461"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.189671" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.189369" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.190162" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.189862" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.190675" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a610&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.190371" 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-08-10T02:07:17.184057" elapsed="0.006713"/>
</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-08-10T02:07:17.198005" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.197757" elapsed="0.000355"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.210966" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.211061" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.211185" 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-08-10T02:07:17.198240" elapsed="0.012980"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.214965" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.211472" elapsed="0.003588"/>
</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-08-10T02:07:17.197356" elapsed="0.017833"/>
</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-08-10T02:07:17.190987" elapsed="0.024314"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.179579" elapsed="0.035840"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.216499" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.215918" 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-08-10T02:07:17.222848" 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-08-10T02:07:17.222981" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.222713" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.223551" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.223157" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.223996" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.223726" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.224454" 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-08-10T02:07:17.224168" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.224906" 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-08-10T02:07:17.224627" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.225614" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.225077" elapsed="0.000567"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.226109" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.225796" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.226621" 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-08-10T02:07:17.226299" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.227116" 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-08-10T02:07:17.226809" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.227659" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.227355" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.228164" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.227857" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.228688" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.228382" 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-08-10T02:07:17.222377" elapsed="0.006408"/>
</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-08-10T02:07:17.236025" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.235759" elapsed="0.000328"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.248793" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.248962" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.249175" 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-08-10T02:07:17.236218" elapsed="0.013014"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.254053" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.249621" elapsed="0.004492"/>
</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-08-10T02:07:17.235311" elapsed="0.018885"/>
</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-08-10T02:07:17.228955" elapsed="0.025312"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.215639" elapsed="0.038679"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.255008" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.254668" 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-08-10T02:07:17.259831" 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-08-10T02:07:17.260025" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.259642" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.260895" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394450&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.260273" elapsed="0.000661"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.261632" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.261233" elapsed="0.000425"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.262078" 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-08-10T02:07:17.261808" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.262537" 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-08-10T02:07:17.262251" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.263475" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.262711" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.263996" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.263675" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.264511" 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-08-10T02:07:17.264188" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.265024" 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-08-10T02:07:17.264702" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.265537" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.265219" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.266039" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.265736" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.266567" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394450&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.266239" 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-08-10T02:07:17.259161" elapsed="0.007504"/>
</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-08-10T02:07:17.273835" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.273587" elapsed="0.000311"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.289783" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.290009" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.290219" 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-08-10T02:07:17.274024" elapsed="0.016251"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.297421" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.290682" elapsed="0.006848"/>
</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-08-10T02:07:17.273173" elapsed="0.024476"/>
</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-08-10T02:07:17.266812" elapsed="0.030900"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.254489" elapsed="0.043261"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.298221" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.297974" 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-08-10T02:07:17.307128" 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-08-10T02:07:17.307263" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:17.306984" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.307857" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.307460" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.308311" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.308039" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.308773" 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-08-10T02:07:17.308506" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.309225" 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-08-10T02:07:17.308947" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.310031" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:17.309416" elapsed="0.000646"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.310552" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.310218" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.311046" 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-08-10T02:07:17.310744" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.311559" 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-08-10T02:07:17.311233" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.312041" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.311747" elapsed="0.000338"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.312551" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.312231" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.313067" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.312744" 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-08-10T02:07:17.306648" 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-08-10T02:07:17.320317" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:17.320069" elapsed="0.000361"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.333669" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.333809" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.334008" 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-08-10T02:07:17.320557" elapsed="0.013508"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.338472" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.334452" elapsed="0.004080"/>
</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-08-10T02:07:17.319671" elapsed="0.018940"/>
</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-08-10T02:07:17.313314" elapsed="0.025368"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.297846" elapsed="0.040887"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.339403" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.339042" 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-08-10T02:07:17.344168" 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-08-10T02:07:17.344374" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:17.343985" elapsed="0.000430"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.345197" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3966b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.344621" elapsed="0.000619"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.345831" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.345481" elapsed="0.000375"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.346278" 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-08-10T02:07:17.346006" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.346736" 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-08-10T02:07:17.346470" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.347502" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:17.346905" elapsed="0.000627"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.347998" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.347682" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.348510" 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-08-10T02:07:17.348186" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.349002" 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-08-10T02:07:17.348696" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.349528" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.349202" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.350061" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.349758" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.350578" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3966b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.350255" 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-08-10T02:07:17.343529" elapsed="0.007145"/>
</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-08-10T02:07:17.357803" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-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-08-10T02:07:17.357555" elapsed="0.000306"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.370431" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.370585" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.370788" 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-08-10T02:07:17.357987" elapsed="0.012858"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.375880" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.371195" elapsed="0.004782"/>
</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-08-10T02:07:17.357124" elapsed="0.018980"/>
</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-08-10T02:07:17.350818" elapsed="0.025399"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.338867" elapsed="0.037431"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.377445" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.376836" 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-08-10T02:07:17.383708" 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-08-10T02:07:17.383838" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:17.383577" elapsed="0.000290"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.384417" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397fb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.384014" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.384904" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.384629" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.385375" 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-08-10T02:07:17.385078" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.385817" 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-08-10T02:07:17.385551" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.386612" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:17.385989" elapsed="0.000653"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.387102" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.386792" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.387612" 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-08-10T02:07:17.387291" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.388105" 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-08-10T02:07:17.387799" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.388606" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:17.388292" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.389106" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:17.388804" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.389648" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397fb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.389328" 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-08-10T02:07:17.383231" elapsed="0.006512"/>
</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-08-10T02:07:17.396882" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;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-08-10T02:07:17.396636" elapsed="0.000305"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.409601" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.409744" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.410019" 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-08-10T02:07:17.397065" elapsed="0.013012"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.414867" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.410467" elapsed="0.004460"/>
</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-08-10T02:07:17.396221" elapsed="0.018786"/>
</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-08-10T02:07:17.389887" elapsed="0.025190"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.376551" elapsed="0.038577"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.415811" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.415467" 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-08-10T02:07:17.420673" 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-08-10T02:07:17.420855" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:17.420487" elapsed="0.000408"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.421725" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397dd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.421101" elapsed="0.000663"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.422390" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.421972" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.422852" 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-08-10T02:07:17.422584" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.423291" 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-08-10T02:07:17.423025" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.424129" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:17.423482" elapsed="0.000677"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.424648" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.424311" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.425140" 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-08-10T02:07:17.424839" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.425667" 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-08-10T02:07:17.425355" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.426151" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.425856" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.426663" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.426359" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.427159" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397dd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.426856" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:17.420000" elapsed="0.007254"/>
</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-08-10T02:07:17.434502" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:17.434227" elapsed="0.000380"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.444541" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.444613" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.444717" 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-08-10T02:07:17.434735" elapsed="0.010008"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.448148" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.444930" elapsed="0.003315"/>
</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-08-10T02:07:17.433829" elapsed="0.014592"/>
</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-08-10T02:07:17.427420" elapsed="0.021121"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.415262" elapsed="0.033362"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.450039" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.449128" elapsed="0.001011"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.456039" 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-08-10T02:07:17.456183" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:17.455901" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.456781" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395e40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.456382" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.457232" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.456958" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.457709" 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-08-10T02:07:17.457439" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.458157" 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-08-10T02:07:17.457888" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.458959" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:17.458331" elapsed="0.000658"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.459487" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.459148" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.459984" 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-08-10T02:07:17.459679" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.460499" 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-08-10T02:07:17.460172" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.460987" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:17.460689" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.461578" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:17.461221" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.462083" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395e40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.461775" 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-08-10T02:07:17.455556" elapsed="0.006623"/>
</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-08-10T02:07:17.469414" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:17.469125" elapsed="0.000348"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.482046" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.482160" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.482378" 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-08-10T02:07:17.469602" elapsed="0.012838"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.487506" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.482792" elapsed="0.004812"/>
</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-08-10T02:07:17.468734" elapsed="0.018995"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-08-10T02:07:17.462325" elapsed="0.025515"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.448848" elapsed="0.039074"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.489001" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.488451" elapsed="0.000648"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.495622" 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-08-10T02:07:17.495754" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.495487" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.496356" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9d4e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.495933" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.496811" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.496537" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.497294" 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-08-10T02:07:17.497022" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.497778" 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-08-10T02:07:17.497506" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.498672" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.497952" elapsed="0.000751"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.499171" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.498856" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.499689" 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-08-10T02:07:17.499383" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.500186" 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-08-10T02:07:17.499879" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.500691" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.500393" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.501183" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.500881" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.501743" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9d4e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.501400" 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-08-10T02:07:17.495133" elapsed="0.006707"/>
</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-08-10T02:07:17.509113" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.508860" elapsed="0.000317"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.521549" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.521776" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.521988" 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-08-10T02:07:17.509304" elapsed="0.012743"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.526868" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.522446" elapsed="0.004482"/>
</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-08-10T02:07:17.508452" elapsed="0.018558"/>
</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-08-10T02:07:17.501986" elapsed="0.025094"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.488136" elapsed="0.038995"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.527814" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.527468" 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-08-10T02:07:17.532699" 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-08-10T02:07:17.532882" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.532512" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.533769" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeec50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.533130" elapsed="0.000678"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.534439" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.534021" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.534885" 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-08-10T02:07:17.534617" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.535324" 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-08-10T02:07:17.535057" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.536228" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.535515" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.536761" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.536444" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.537256" 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-08-10T02:07:17.536954" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.537803" 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-08-10T02:07:17.537463" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.538300" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.537995" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.538822" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.538518" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.539321" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeec50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.539016" 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-08-10T02:07:17.532021" elapsed="0.007415"/>
</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-08-10T02:07:17.546626" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.546368" elapsed="0.000362"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.560438" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.560538" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.560667" 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-08-10T02:07:17.546860" elapsed="0.013843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.564824" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.560925" elapsed="0.003995"/>
</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-08-10T02:07:17.545952" elapsed="0.019097"/>
</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-08-10T02:07:17.539582" elapsed="0.025581"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.527266" elapsed="0.037980"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.566390" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.565802" elapsed="0.000691"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.572148" 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-08-10T02:07:17.572281" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.572014" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.572891" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe3a60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.572476" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.573360" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.573067" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.573820" 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-08-10T02:07:17.573538" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.574271" 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-08-10T02:07:17.573994" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.575189" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.574465" elapsed="0.000755"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.575723" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.575398" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.576221" 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-08-10T02:07:17.575916" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.576777" 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-08-10T02:07:17.576464" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.577267" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.576968" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.577816" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.577478" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.578315" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe3a60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.578011" 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-08-10T02:07:17.571679" elapsed="0.006752"/>
</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-08-10T02:07:17.585625" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.585329" elapsed="0.000365"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.597985" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.598056" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.598145" 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-08-10T02:07:17.585824" elapsed="0.012346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.602206" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.598324" elapsed="0.003977"/>
</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-08-10T02:07:17.584926" elapsed="0.017547"/>
</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-08-10T02:07:17.578577" elapsed="0.024099"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.565499" elapsed="0.037262"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.603850" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.603261" 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-08-10T02:07:17.608802" 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-08-10T02:07:17.608943" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.608670" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.609611" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88900&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.609120" elapsed="0.000535"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.610083" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.609807" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.610551" 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-08-10T02:07:17.610256" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.610990" 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-08-10T02:07:17.610725" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.611878" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.611160" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.612395" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.612065" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.612890" 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-08-10T02:07:17.612587" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.613408" 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-08-10T02:07:17.613081" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.613923" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.613598" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.614435" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.614115" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.614943" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88900&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.614641" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:17.608321" elapsed="0.006718"/>
</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-08-10T02:07:17.622211" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.621964" elapsed="0.000349"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.634212" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.634415" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.634621" 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-08-10T02:07:17.622459" elapsed="0.012218"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.639253" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.635029" elapsed="0.004285"/>
</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-08-10T02:07:17.621541" elapsed="0.017879"/>
</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-08-10T02:07:17.615185" elapsed="0.024307"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.602980" elapsed="0.036564"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.640192" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.639852" elapsed="0.000401"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.645038" 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-08-10T02:07:17.645221" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.644853" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.646140" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1ee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.645502" elapsed="0.000678"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.646715" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.646432" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.647155" 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-08-10T02:07:17.646890" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.647619" 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-08-10T02:07:17.647329" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.648523" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.647791" elapsed="0.000763"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.649034" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.648716" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.649546" 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-08-10T02:07:17.649225" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.650059" 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-08-10T02:07:17.649747" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.650613" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.650291" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.651110" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.650806" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.651629" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1ee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.651303" 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-08-10T02:07:17.644388" elapsed="0.007340"/>
</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-08-10T02:07:17.658943" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.658695" elapsed="0.000311"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.671777" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.671849" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.671945" 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-08-10T02:07:17.659132" elapsed="0.012837"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.682646" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.672133" elapsed="0.010566"/>
</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-08-10T02:07:17.658277" elapsed="0.024480"/>
</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-08-10T02:07:17.651875" elapsed="0.030933"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.639677" elapsed="0.043202"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.683388" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.683121" 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-08-10T02:07:17.686859" 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-08-10T02:07:17.687026" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.686719" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.687638" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89d00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.687203" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.688087" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.687814" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.688550" 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-08-10T02:07:17.688261" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.688989" 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-08-10T02:07:17.688724" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.689904" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.689161" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.690430" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.690097" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.690927" 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-08-10T02:07:17.690624" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.691519" 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-08-10T02:07:17.691187" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.692006" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.691708" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.692526" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.692204" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.693030" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89d00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.692724" 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-08-10T02:07:17.686387" elapsed="0.006737"/>
</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-08-10T02:07:17.700287" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.700039" elapsed="0.000337"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.711055" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.711199" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.711329" 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-08-10T02:07:17.700502" elapsed="0.010897"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.714546" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.711619" elapsed="0.002986"/>
</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-08-10T02:07:17.699632" elapsed="0.015053"/>
</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-08-10T02:07:17.693268" elapsed="0.021487"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.682991" elapsed="0.031815"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.715488" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.715116" elapsed="0.000434"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.720372" 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-08-10T02:07:17.720559" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.720155" elapsed="0.000444"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.721408" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.720804" elapsed="0.000644"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.722075" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.721656" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.722730" 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-08-10T02:07:17.722317" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.723365" 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-08-10T02:07:17.722970" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.724657" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.723610" elapsed="0.001089"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.725370" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.724913" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.726095" 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-08-10T02:07:17.725638" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.726748" 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-08-10T02:07:17.726402" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.727274" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.726935" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.727790" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.727484" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.728286" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.727982" 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-08-10T02:07:17.719692" elapsed="0.008708"/>
</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-08-10T02:07:17.735560" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.735292" elapsed="0.000333"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.750079" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.750179" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.750304" 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-08-10T02:07:17.735751" elapsed="0.014614"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.757175" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.750680" elapsed="0.006593"/>
</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-08-10T02:07:17.734892" elapsed="0.022546"/>
</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-08-10T02:07:17.728547" elapsed="0.029005"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.714941" elapsed="0.042755"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.758585" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.758268" elapsed="0.000361"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.762036" 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-08-10T02:07:17.762168" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.761886" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.762787" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e59e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.762363" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.763235" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.762964" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.763699" 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-08-10T02:07:17.763430" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.764137" 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-08-10T02:07:17.763873" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.765057" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.764307" elapsed="0.000781"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.765576" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.765240" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.766102" 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-08-10T02:07:17.765768" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.766623" 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-08-10T02:07:17.766292" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.767112" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.766814" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.767626" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.767304" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.768122" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e59e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.767820" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:17.761557" elapsed="0.006660"/>
</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-08-10T02:07:17.775423" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.775157" elapsed="0.000366"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.787684" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.787782" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.787909" 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-08-10T02:07:17.775651" elapsed="0.012294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.791148" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.788167" elapsed="0.003077"/>
</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-08-10T02:07:17.774763" elapsed="0.016646"/>
</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-08-10T02:07:17.768378" elapsed="0.023150"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.757979" elapsed="0.033632"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.792690" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.792102" 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-08-10T02:07:17.799536" 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-08-10T02:07:17.799670" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.799400" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.800275" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.799850" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.800746" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.800471" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.801191" 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-08-10T02:07:17.800920" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.801648" 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-08-10T02:07:17.801382" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.802589" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.801818" elapsed="0.000802"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.803088" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.802774" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.803609" 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-08-10T02:07:17.803279" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.804149" 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-08-10T02:07:17.803838" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.804658" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.804356" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.805154" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.804850" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.805683" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.805375" 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-08-10T02:07:17.799048" elapsed="0.006732"/>
</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-08-10T02:07:17.812968" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.812719" elapsed="0.000314"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.824768" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.824848" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.824940" 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-08-10T02:07:17.813160" elapsed="0.011805"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.829603" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.825129" elapsed="0.004572"/>
</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-08-10T02:07:17.812305" elapsed="0.017592"/>
</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-08-10T02:07:17.805926" elapsed="0.024089"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.791824" elapsed="0.038332"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.831240" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.830695" 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-08-10T02:07:17.836683" 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-08-10T02:07:17.836814" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.836549" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.837415" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8b240&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.836992" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.837867" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.837592" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.838325" 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-08-10T02:07:17.838043" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.838797" 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-08-10T02:07:17.838530" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.839642" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.838970" elapsed="0.000702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.840141" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.839827" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.840655" 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-08-10T02:07:17.840350" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.841152" 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-08-10T02:07:17.840844" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.841655" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.841356" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.842177" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.841846" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.842732" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8b240&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.842415" 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-08-10T02:07:17.836200" elapsed="0.006627"/>
</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-08-10T02:07:17.850033" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.849785" elapsed="0.000379"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.864603" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.864760" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.864975" 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-08-10T02:07:17.850301" elapsed="0.014732"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.870238" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.865439" elapsed="0.004924"/>
</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-08-10T02:07:17.849390" elapsed="0.021118"/>
</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-08-10T02:07:17.842978" elapsed="0.027637"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.830411" elapsed="0.040266"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.871374" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.871001" elapsed="0.000439"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.876265" 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-08-10T02:07:17.876489" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.876074" elapsed="0.000457"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.877360" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e5760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.876740" elapsed="0.000662"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.878000" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.877612" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.878713" 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-08-10T02:07:17.878291" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.879168" 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-08-10T02:07:17.878892" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.880116" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.879359" elapsed="0.000788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.880686" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.880305" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.881186" 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-08-10T02:07:17.880879" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.881705" 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-08-10T02:07:17.881393" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.882255" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.881937" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.882784" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:17.882475" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.883283" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e5760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.882978" 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-08-10T02:07:17.875600" elapsed="0.007800"/>
</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-08-10T02:07:17.890671" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:17.890416" elapsed="0.000320"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.902977" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.903076" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.903203" 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-08-10T02:07:17.890869" elapsed="0.012369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.906465" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.903505" elapsed="0.003021"/>
</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-08-10T02:07:17.889985" elapsed="0.016622"/>
</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-08-10T02:07:17.883546" elapsed="0.023132"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.870824" elapsed="0.035948"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.907471" level="INFO">f156.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.907094" 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-08-10T02:07:17.912380" 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-08-10T02:07:17.912564" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:17.912169" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.913393" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0e50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.912811" elapsed="0.000623"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.914034" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.913645" elapsed="0.000425"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.914729" 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-08-10T02:07:17.914321" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.915394" 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-08-10T02:07:17.914975" elapsed="0.000459"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.916270" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:17.915607" elapsed="0.000693"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.916790" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.916473" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.917299" 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-08-10T02:07:17.916982" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.917821" 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-08-10T02:07:17.917511" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.918321" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.918011" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.918841" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.918532" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.919360" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0e50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.919036" 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-08-10T02:07:17.911705" elapsed="0.007755"/>
</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-08-10T02:07:17.926759" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:17.926508" elapsed="0.000313"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.940009" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.940242" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.940506" 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-08-10T02:07:17.926948" elapsed="0.013615"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.945657" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.940915" elapsed="0.004839"/>
</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-08-10T02:07:17.926045" elapsed="0.019834"/>
</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-08-10T02:07:17.919607" elapsed="0.026384"/>
</kw>
<var name="${flowfile}">f156.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.906910" elapsed="0.039164"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.947222" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.946670" elapsed="0.000657"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.950862" 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-08-10T02:07:17.950998" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:17.950720" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.951601" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.951176" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.952050" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.951779" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.952506" 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-08-10T02:07:17.952223" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.952944" 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-08-10T02:07:17.952679" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.953797" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.953118" elapsed="0.000709"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.954328" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.953987" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.954852" 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-08-10T02:07:17.954546" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.955365" 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-08-10T02:07:17.955040" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.955859" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:17.955556" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.956370" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.956054" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.956870" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.956570" elapsed="0.000340"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:17.950385" elapsed="0.006578"/>
</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-08-10T02:07:17.964138" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:17.963885" elapsed="0.000355"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:17.977632" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:17.977727" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:17.977855" 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-08-10T02:07:17.964388" elapsed="0.013502"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.981050" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.978114" elapsed="0.002996"/>
</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-08-10T02:07:17.963484" elapsed="0.017706"/>
</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-08-10T02:07:17.957108" elapsed="0.024153"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.946379" elapsed="0.034933"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.981988" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:17.981647" elapsed="0.000403"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:17.986896" 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-08-10T02:07:17.987080" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:17.986702" elapsed="0.000419"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:17.987913" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:17.987328" elapsed="0.000625"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.988568" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:17.988162" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.989179" 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-08-10T02:07:17.988811" elapsed="0.000404"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:17.989825" 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-08-10T02:07:17.989451" elapsed="0.000410"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:17.991052" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.990067" elapsed="0.001028"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.991714" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.991313" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.992222" 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-08-10T02:07:17.991917" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.992737" 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-08-10T02:07:17.992429" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.993263" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:17.992962" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.993780" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:17.993475" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:17.994279" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:17.993974" 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-08-10T02:07:17.986202" elapsed="0.011023"/>
</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-08-10T02:07:18.004497" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.004225" elapsed="0.000336"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.020926" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.021079" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.021278" 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-08-10T02:07:18.004688" elapsed="0.016693"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.026530" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.021751" elapsed="0.004840"/>
</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-08-10T02:07:18.003824" elapsed="0.022848"/>
</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-08-10T02:07:17.997390" elapsed="0.029353"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-08-10T02:07:17.981471" elapsed="0.045323"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.027486" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.027114" elapsed="0.000434"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:18.032395" 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-08-10T02:07:18.032590" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.032188" elapsed="0.000443"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.033420" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368c70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.032841" elapsed="0.000618"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.034047" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.033669" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.034733" 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-08-10T02:07:18.034291" elapsed="0.000478"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.035400" 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-08-10T02:07:18.034977" elapsed="0.000467"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.036273" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:18.035612" elapsed="0.000691"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.036789" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.036474" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.037280" 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-08-10T02:07:18.036978" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.037801" 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-08-10T02:07:18.037492" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.038293" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.037989" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.038843" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:18.038534" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.039377" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368c70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.039048" 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-08-10T02:07:18.031724" elapsed="0.007752"/>
</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-08-10T02:07:18.046614" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.046330" elapsed="0.000348"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.059182" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.059326" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.059593" 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-08-10T02:07:18.046804" elapsed="0.012845"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.064685" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.060000" elapsed="0.004783"/>
</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-08-10T02:07:18.045939" elapsed="0.018974"/>
</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-08-10T02:07:18.039622" elapsed="0.025404"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.026929" elapsed="0.038179"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.066217" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.065661" elapsed="0.000654"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:18.070426" 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-08-10T02:07:18.070595" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.070272" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.071188" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe03b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.070773" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.071667" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.071390" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.072103" 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-08-10T02:07:18.071840" elapsed="0.000288"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.072557" 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-08-10T02:07:18.072273" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.073441" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:18.072728" elapsed="0.000744"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.073950" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.073633" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.074457" 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-08-10T02:07:18.074139" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.074988" 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-08-10T02:07:18.074678" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.075496" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.075181" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.075988" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:18.075687" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.076500" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe03b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.076181" 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-08-10T02:07:18.069933" elapsed="0.006663"/>
</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-08-10T02:07:18.083782" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.083534" elapsed="0.000357"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.096194" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.096289" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.096450" 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-08-10T02:07:18.084018" elapsed="0.012468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.099628" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.096707" elapsed="0.002981"/>
</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-08-10T02:07:18.083109" elapsed="0.016660"/>
</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-08-10T02:07:18.076741" elapsed="0.023098"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.065329" elapsed="0.034562"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.100575" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.100199" 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-08-10T02:07:18.105437" 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-08-10T02:07:18.105620" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:18.105230" elapsed="0.000431"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.106475" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395e40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.105867" elapsed="0.000648"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.107155" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.106770" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.107732" 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-08-10T02:07:18.107446" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.108169" 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-08-10T02:07:18.107905" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.109088" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:18.108359" elapsed="0.000759"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.109616" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.109276" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.110109" 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-08-10T02:07:18.109806" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.110633" 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-08-10T02:07:18.110296" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.111161" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.110859" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.111683" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.111378" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.112180" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395e40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.111876" 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-08-10T02:07:18.104768" elapsed="0.007509"/>
</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-08-10T02:07:18.119471" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;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-08-10T02:07:18.119200" elapsed="0.000336"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.134239" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.134313" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.134530" 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-08-10T02:07:18.119662" elapsed="0.014934"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.139681" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.134989" elapsed="0.004788"/>
</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-08-10T02:07:18.118807" elapsed="0.021097"/>
</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-08-10T02:07:18.112438" elapsed="0.027578"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.100025" elapsed="0.040138"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.141257" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.140705" elapsed="0.000684"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:18.145977" 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-08-10T02:07:18.146112" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:18.145842" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.149808" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3962a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.146288" elapsed="0.003559"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.150328" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.150031" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.150819" 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-08-10T02:07:18.150521" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.151266" 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-08-10T02:07:18.150995" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.152200" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:18.151462" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.152724" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.152400" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.153217" 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-08-10T02:07:18.152915" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.153731" 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-08-10T02:07:18.153422" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.154224" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.153928" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.154762" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.154430" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.155261" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3962a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.154956" 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-08-10T02:07:18.145509" elapsed="0.009868"/>
</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-08-10T02:07:18.162558" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;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-08-10T02:07:18.162290" elapsed="0.000335"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.173725" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.173821" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.173949" 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-08-10T02:07:18.162806" elapsed="0.011178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.178326" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.174206" elapsed="0.004250"/>
</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-08-10T02:07:18.161898" elapsed="0.016687"/>
</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-08-10T02:07:18.155534" elapsed="0.023185"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.140422" elapsed="0.038384"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.179898" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.179310" 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-08-10T02:07:18.185382" 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-08-10T02:07:18.185518" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.185227" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.186114" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.185698" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.186586" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.186292" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.187045" 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-08-10T02:07:18.186780" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.187514" 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-08-10T02:07:18.187219" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.188411" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:18.187687" elapsed="0.000755"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.188916" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.188605" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.189426" 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-08-10T02:07:18.189106" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.189961" 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-08-10T02:07:18.189615" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.190466" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.190151" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.190998" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:18.190660" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.191518" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.191191" 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-08-10T02:07:18.184892" elapsed="0.006723"/>
</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-08-10T02:07:18.198809" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.198532" elapsed="0.000342"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.213565" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.213719" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.213917" 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-08-10T02:07:18.198999" elapsed="0.014973"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.220846" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.214322" elapsed="0.006620"/>
</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-08-10T02:07:18.198119" elapsed="0.022949"/>
</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-08-10T02:07:18.191760" elapsed="0.029418"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.179026" elapsed="0.042301"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.222450" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.221869" elapsed="0.000678"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:18.226507" 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-08-10T02:07:18.226709" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.226367" elapsed="0.000372"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.227314" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21e250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.226908" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.227785" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.227513" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.228228" 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-08-10T02:07:18.227960" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.228684" 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-08-10T02:07:18.228418" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.229498" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:18.228855" elapsed="0.000673"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.229992" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.229680" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.230502" 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-08-10T02:07:18.230181" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.231037" 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-08-10T02:07:18.230691" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.231552" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.231227" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.232046" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:18.231744" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.232565" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21e250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.232237" 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-08-10T02:07:18.226020" elapsed="0.006640"/>
</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-08-10T02:07:18.239807" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:18.239556" elapsed="0.000313"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.251021" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.251159" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.251289" 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-08-10T02:07:18.239994" elapsed="0.011330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.254464" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.251582" elapsed="0.002942"/>
</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-08-10T02:07:18.239137" elapsed="0.015466"/>
</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-08-10T02:07:18.232804" elapsed="0.021868"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.221590" elapsed="0.033134"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.255413" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.255047" 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-08-10T02:07:18.260235" 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-08-10T02:07:18.260440" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:18.260051" elapsed="0.000430"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.261213" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.260690" elapsed="0.000562"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.261868" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.261487" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.262506" 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-08-10T02:07:18.262112" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.263137" 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-08-10T02:07:18.262745" elapsed="0.000427"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.264141" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:18.263399" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.264854" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.264420" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.265567" 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-08-10T02:07:18.265121" elapsed="0.000502"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.266259" 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-08-10T02:07:18.265831" elapsed="0.000485"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.267001" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:18.266548" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.267689" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:18.267272" elapsed="0.000461"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.268185" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.267881" 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-08-10T02:07:18.259590" elapsed="0.008690"/>
</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-08-10T02:07:18.275518" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:18.275234" elapsed="0.000388"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.285683" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.285747" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.285839" 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-08-10T02:07:18.275755" elapsed="0.010109"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.290270" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.286020" elapsed="0.004382"/>
</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-08-10T02:07:18.274780" elapsed="0.015754"/>
</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-08-10T02:07:18.268442" elapsed="0.022208"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.254873" elapsed="0.035858"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.291860" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.291264" elapsed="0.000694"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:18.300551" 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-08-10T02:07:18.300704" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:18.300404" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.301324" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397a10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.300889" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.301798" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.301521" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.302237" 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-08-10T02:07:18.301972" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.302694" 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-08-10T02:07:18.302428" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.303571" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:18.302863" elapsed="0.000739"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.304083" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.303760" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.304598" 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-08-10T02:07:18.304274" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.305095" 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-08-10T02:07:18.304787" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.305604" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:18.305283" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.306138" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:18.305832" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.306656" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397a10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.306348" 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-08-10T02:07:18.300012" elapsed="0.006738"/>
</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-08-10T02:07:18.313935" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:18.313686" elapsed="0.000310"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.325186" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.325277" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.325438" 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-08-10T02:07:18.314131" elapsed="0.011343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.329319" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.325694" elapsed="0.003756"/>
</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-08-10T02:07:18.313274" elapsed="0.016305"/>
</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-08-10T02:07:18.306896" elapsed="0.022796"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.290978" elapsed="0.038795"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.330845" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.330265" elapsed="0.000677"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:18.337091" 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-08-10T02:07:18.337223" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:18.336959" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.337803" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21e2a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.337421" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.338292" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.338015" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.338755" 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-08-10T02:07:18.338488" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.339215" 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-08-10T02:07:18.338929" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.339965" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:18.339404" elapsed="0.000591"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.340478" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.340147" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.340974" 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-08-10T02:07:18.340671" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.341485" 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-08-10T02:07:18.341161" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.341969" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:18.341674" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.342479" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:18.342160" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.342974" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21e2a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.342671" 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-08-10T02:07:18.336629" elapsed="0.006466"/>
</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-08-10T02:07:18.350283" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:18.350036" elapsed="0.000323"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.359494" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.359565" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.359856" 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-08-10T02:07:18.350488" elapsed="0.009427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.364947" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.360267" elapsed="0.004775"/>
</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-08-10T02:07:18.349637" elapsed="0.015530"/>
</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-08-10T02:07:18.343240" elapsed="0.022037"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.329986" elapsed="0.035410"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.366472" level="INFO">f221.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.365894" elapsed="0.000679"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:18.370624" 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-08-10T02:07:18.370756" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:18.370489" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.371361" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3949f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.370934" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.371826" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.371550" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.372264" 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-08-10T02:07:18.372000" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.372724" 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-08-10T02:07:18.372456" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.373539" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:18.372896" elapsed="0.000673"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.374047" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.373732" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.374569" 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-08-10T02:07:18.374238" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.375093" 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-08-10T02:07:18.374759" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.375608" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.375285" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.376113" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.375807" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.376632" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3949f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.376306" 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-08-10T02:07:18.370144" elapsed="0.006585"/>
</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-08-10T02:07:18.383982" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:18.383723" elapsed="0.000358"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.395108" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.395202" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.395365" 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-08-10T02:07:18.384210" elapsed="0.011195"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.398535" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.395635" elapsed="0.002960"/>
</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-08-10T02:07:18.383295" elapsed="0.015379"/>
</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-08-10T02:07:18.376876" elapsed="0.021870"/>
</kw>
<var name="${flowfile}">f221.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.365612" elapsed="0.033185"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.399492" level="INFO">f222.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.399122" 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-08-10T02:07:18.404445" 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-08-10T02:07:18.404630" 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-08-10T02:07:18.404235" elapsed="0.000435"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.405411" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369d50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.404876" elapsed="0.000576"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.406042" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.405659" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.406738" 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-08-10T02:07:18.406286" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.407388" 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-08-10T02:07:18.406978" elapsed="0.000447"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.408322" 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-08-10T02:07:18.407635" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.409087" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.408650" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.409819" 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-08-10T02:07:18.409389" elapsed="0.000486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.410547" 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-08-10T02:07:18.410083" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.411261" 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-08-10T02:07:18.410811" elapsed="0.000605"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.411921" 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-08-10T02:07:18.411614" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.412441" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369d50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.412114" 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-08-10T02:07:18.403770" elapsed="0.008769"/>
</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-08-10T02:07:18.419749" 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-08-10T02:07:18.419489" elapsed="0.000317"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.429209" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.429269" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.429402" 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-08-10T02:07:18.419934" elapsed="0.009538"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.439903" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.429856" elapsed="0.010096"/>
</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-08-10T02:07:18.419037" elapsed="0.020975"/>
</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-08-10T02:07:18.412685" elapsed="0.027378"/>
</kw>
<var name="${flowfile}">f222.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.398931" elapsed="0.041169"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.440602" level="INFO">f223.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.440353" 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-08-10T02:07:18.444077" 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-08-10T02:07:18.444219" 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-08-10T02:07:18.443945" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.444801" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3971f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.444419" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.445251" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.444978" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.445710" 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-08-10T02:07:18.445444" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.446202" 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-08-10T02:07:18.445931" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.446908" 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-08-10T02:07:18.446393" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.447457" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.447092" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.447956" 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-08-10T02:07:18.447652" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.448476" 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-08-10T02:07:18.448146" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.448975" 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-08-10T02:07:18.448667" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.449487" 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-08-10T02:07:18.449168" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.449989" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3971f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.449680" 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-08-10T02:07:18.443610" elapsed="0.006473"/>
</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-08-10T02:07:18.457271" 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-08-10T02:07:18.457024" elapsed="0.000303"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.471186" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.471487" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.471621" 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-08-10T02:07:18.457472" elapsed="0.014184"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.476303" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.471889" elapsed="0.004547"/>
</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-08-10T02:07:18.456624" elapsed="0.019940"/>
</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-08-10T02:07:18.450228" elapsed="0.026520"/>
</kw>
<var name="${flowfile}">f223.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.440203" elapsed="0.036631"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.477934" level="INFO">f224.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.477363" elapsed="0.000671"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:18.482883" 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-08-10T02:07:18.483023" 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-08-10T02:07:18.482748" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.483622" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee9d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.483202" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.484075" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.483801" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.484534" 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-08-10T02:07:18.484249" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.484971" 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-08-10T02:07:18.484707" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.485694" 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-08-10T02:07:18.485143" elapsed="0.000581"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.486194" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.485878" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.486708" 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-08-10T02:07:18.486401" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.487205" 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-08-10T02:07:18.486896" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.487738" 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-08-10T02:07:18.487438" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.488232" 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-08-10T02:07:18.487931" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.488748" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee9d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.488444" 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-08-10T02:07:18.482405" elapsed="0.006438"/>
</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-08-10T02:07:18.496035" 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-08-10T02:07:18.495787" elapsed="0.000308"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.508715" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.508859" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.508993" 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-08-10T02:07:18.496220" elapsed="0.012810"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.512152" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.509250" elapsed="0.002962"/>
</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-08-10T02:07:18.495376" elapsed="0.016915"/>
</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-08-10T02:07:18.488989" elapsed="0.023397"/>
</kw>
<var name="${flowfile}">f224.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.477051" elapsed="0.035388"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.513092" level="INFO">f225.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.512752" elapsed="0.000401"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:18.517950" 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-08-10T02:07:18.518128" 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-08-10T02:07:18.517764" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.518917" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.518399" elapsed="0.000556"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.519577" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.519162" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.520197" 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-08-10T02:07:18.519821" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.520834" 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-08-10T02:07:18.520464" elapsed="0.000405"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.521819" 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-08-10T02:07:18.521074" elapsed="0.000786"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.522533" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.522073" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.523222" 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-08-10T02:07:18.522800" elapsed="0.000477"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.523977" 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-08-10T02:07:18.523541" elapsed="0.000493"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.524661" 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-08-10T02:07:18.524242" elapsed="0.000462"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.525153" 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-08-10T02:07:18.524853" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.525667" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.525360" 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-08-10T02:07:18.517281" elapsed="0.008483"/>
</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-08-10T02:07:18.532963" 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-08-10T02:07:18.532712" elapsed="0.000347"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.544088" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.544173" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.544300" 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-08-10T02:07:18.533189" elapsed="0.011175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.547483" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.544588" elapsed="0.002959"/>
</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-08-10T02:07:18.532288" elapsed="0.015339"/>
</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-08-10T02:07:18.525909" elapsed="0.021790"/>
</kw>
<var name="${flowfile}">f225.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.512578" elapsed="0.035173"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.548430" level="INFO">f550.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.548060" 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-08-10T02:07:18.553252" 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-08-10T02:07:18.553471" 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-08-10T02:07:18.553069" elapsed="0.000444"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:18.554255" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1c10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:18.553719" elapsed="0.000575"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.554912" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:18.554531" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.555594" 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-08-10T02:07:18.555155" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:18.556217" 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-08-10T02:07:18.555839" elapsed="0.000414"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:18.557086" 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-08-10T02:07:18.556504" elapsed="0.000613"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.557608" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.557270" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.558102" 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-08-10T02:07:18.557799" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.558621" 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-08-10T02:07:18.558295" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.559106" 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-08-10T02:07:18.558809" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.559671" 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-08-10T02:07:18.559350" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.560168" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1c10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:18.559865" 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-08-10T02:07:18.552610" elapsed="0.007654"/>
</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-08-10T02:07:18.567443" 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-08-10T02:07:18.567165" elapsed="0.000339"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:18.580848" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:18.580994" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:07:18.581201" 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-08-10T02:07:18.567630" elapsed="0.013628"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.586327" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.581672" elapsed="0.004788"/>
</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-08-10T02:07:18.566772" elapsed="0.019818"/>
</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-08-10T02:07:18.560427" elapsed="0.026276"/>
</kw>
<var name="${flowfile}">f550.xml</var>
<status status="PASS" start="2026-08-10T02:07:18.547886" elapsed="0.038900"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-08-10T02:07:16.357082" elapsed="2.229775"/>
</for>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.588272" level="INFO">Length is 57.</msg>
<msg time="2026-08-10T02:07:18.588488" 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-08-10T02:07:18.587211" elapsed="0.001308"/>
</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-08-10T02:07:18.615418" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:18.616573" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/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,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":516000000}},"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":557000000}},"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":602000000}},"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":644000000}},"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":682000000}},"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":716000000}},"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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:18.617050" 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-08-10T02:07:18.592509" elapsed="0.024602"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.622729" level="INFO">{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":516000000}},"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":557000000}},"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":602000000}},"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":644000000}},"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":682000000}},"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":716000000}},"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":763000000}},"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":812000000}},"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":861000000}},"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":780000000}},"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":86000000}},"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":128000000}},"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":170000000}},"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":201000000}},"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":278000000}},"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":322000000}},"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":359000000}},"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":392000000}},"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":0,"nanosecond":388000000}},"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":0,"nanosecond":435000000}},"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":927000000}},"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":472000000}},"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":510000000}},"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":550000000}},"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":588000000}},"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":626000000}},"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":662000000}},"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":970000000}},"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":700000000}},"priority":102,"cookie_mask":"255","flow-name":"FooXf102","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"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":1,"nanosecond":12000000}},"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":740000000}},"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":49000000}},"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":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":0,"nanosecond":8000000}},"flags":""},{"id":"#UF$TABLE*2-9","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":46000000}},"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":816000000}},"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":846000000}},"priority":38,"cookie_mask":"255","flow-name":"FooXf38","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"#UF$TABLE*2-16","table_id":2,"priority":156,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":321000000}},"flags":""},{"id":"#UF$TABLE*2-15","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":164000000}},"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":873000000}},"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":0,"nanosecond":349000000}},"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,"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":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":281000000}},"flags":""},{"id":"#UF$TABLE*2-11","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":86000000}},"flags":""},{"id":"#UF$TABLE*2-14","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":199000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":129000000}},"flags":""}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:18.617499" elapsed="0.006188"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:07:18.626728" level="INFO">Item found from container 66 times.</msg>
<msg time="2026-08-10T02:07:18.627129" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":516000000}},"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":557000000}},"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":602000000}},"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":644000000}},"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":682000000}},"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":716000000}},"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":763000000}},"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":812000000}},"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":861000000}},"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":780000000}},"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":86000000}},"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":128000000}},"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":170000000}},"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":201000000}},"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":278000000}},"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":322000000}},"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":359000000}},"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":392000000}},"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":0,"nanosecond":388000000}},"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":0,"nanosecond":435000000}},"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":927000000}},"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":472000000}},"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":510000000}},"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":550000000}},"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":588000000}},"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":626000000}},"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":662000000}},"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":970000000}},"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":700000000}},"priority":102,"cookie_mask":"255","flow-name":"FooXf102","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"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":1,"nanosecond":12000000}},"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":740000000}},"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":49000000}},"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":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":0,"nanosecond":8000000}},"flags":""},{"id":"#UF$TABLE*2-9","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":46000000}},"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":816000000}},"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":846000000}},"priority":38,"cookie_mask":"255","flow-name":"FooXf38","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"#UF$TABLE*2-16","table_id":2,"priority":156,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":321000000}},"flags":""},{"id":"#UF$TABLE*2-15","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":164000000}},"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":873000000}},"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":0,"nanosecond":349000000}},"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,"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":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":281000000}},"flags":""},{"id":"#UF$TABLE*2-11","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":86000000}},"flags":""},{"id":"#UF$TABLE*2-14","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":199000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":129000000}},"flags":""}]}]}' contains 'priority' 66 times, not 57 times.</msg>
<arg>${resp.text}</arg>
<arg>priority</arg>
<arg>${flows}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-08-10T02:07:18.624035" elapsed="0.003619">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":[{"orde...
    [ Message content over the limit has been removed. ]
...tatistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":199000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":129000000}},"flags":""}]}]}' contains 'priority' 66 times, not 57 times.</status>
</kw>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>A GET on the /node=${node_id} inventory API is made and flow stats string is checked for existence.</doc>
<status status="FAIL" start="2026-08-10T02:07:18.592156" elapsed="0.035678">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":[{"orde...
    [ Message content over the limit has been removed. ]
...tatistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":199000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":129000000}},"flags":""}]}]}' contains 'priority' 66 times, not 57 times.</status>
</kw>
<kw name="Check Flow Stats Are Available" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:20.659569" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:20.660681" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/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,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":516000000}},"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":557000000}},"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":602000000}},"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":644000000}},"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":682000000}},"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":716000000}},"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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:20.661187" 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-08-10T02:07:20.636179" elapsed="0.025070"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:20.665756" level="INFO">{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":516000000}},"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":557000000}},"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":602000000}},"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":644000000}},"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":682000000}},"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":716000000}},"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":763000000}},"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":812000000}},"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":861000000}},"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":780000000}},"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":86000000}},"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":128000000}},"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":170000000}},"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":201000000}},"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":278000000}},"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":322000000}},"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":359000000}},"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":392000000}},"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":0,"nanosecond":388000000}},"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":0,"nanosecond":435000000}},"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":927000000}},"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":472000000}},"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":510000000}},"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":550000000}},"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":588000000}},"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":626000000}},"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":662000000}},"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":970000000}},"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":700000000}},"priority":102,"cookie_mask":"255","flow-name":"FooXf102","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"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":1,"nanosecond":12000000}},"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":740000000}},"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":49000000}},"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":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":0,"nanosecond":8000000}},"flags":""},{"id":"#UF$TABLE*2-9","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":46000000}},"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":816000000}},"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":846000000}},"priority":38,"cookie_mask":"255","flow-name":"FooXf38","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"#UF$TABLE*2-16","table_id":2,"priority":156,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":321000000}},"flags":""},{"id":"#UF$TABLE*2-15","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":164000000}},"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":873000000}},"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":0,"nanosecond":349000000}},"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,"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":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":281000000}},"flags":""},{"id":"#UF$TABLE*2-11","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":86000000}},"flags":""},{"id":"#UF$TABLE*2-14","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":199000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":129000000}},"flags":""}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:20.661673" elapsed="0.004633"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:07:20.669931" level="INFO">Item found from container 66 times.</msg>
<msg time="2026-08-10T02:07:20.670443" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":516000000}},"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":557000000}},"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":602000000}},"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":644000000}},"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":682000000}},"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":716000000}},"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":763000000}},"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":812000000}},"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":861000000}},"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":780000000}},"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":86000000}},"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":128000000}},"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":170000000}},"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":201000000}},"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":278000000}},"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":322000000}},"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":359000000}},"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":392000000}},"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":0,"nanosecond":388000000}},"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":0,"nanosecond":435000000}},"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":927000000}},"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":472000000}},"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":510000000}},"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":550000000}},"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":588000000}},"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":626000000}},"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":662000000}},"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":970000000}},"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":700000000}},"priority":102,"cookie_mask":"255","flow-name":"FooXf102","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"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":1,"nanosecond":12000000}},"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":740000000}},"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":49000000}},"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":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":0,"nanosecond":8000000}},"flags":""},{"id":"#UF$TABLE*2-9","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":46000000}},"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":816000000}},"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":846000000}},"priority":38,"cookie_mask":"255","flow-name":"FooXf38","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"#UF$TABLE*2-16","table_id":2,"priority":156,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":321000000}},"flags":""},{"id":"#UF$TABLE*2-15","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":164000000}},"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":873000000}},"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":0,"nanosecond":349000000}},"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,"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":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":281000000}},"flags":""},{"id":"#UF$TABLE*2-11","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":86000000}},"flags":""},{"id":"#UF$TABLE*2-14","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":199000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":129000000}},"flags":""}]}]}' contains 'priority' 66 times, not 57 times.</msg>
<arg>${resp.text}</arg>
<arg>priority</arg>
<arg>${flows}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-08-10T02:07:20.666545" elapsed="0.004572">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":[{"orde...
    [ Message content over the limit has been removed. ]
...tatistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":199000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":129000000}},"flags":""}]}]}' contains 'priority' 66 times, not 57 times.</status>
</kw>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>A GET on the /node=${node_id} inventory API is made and flow stats string is checked for existence.</doc>
<status status="FAIL" start="2026-08-10T02:07:20.635552" elapsed="0.035813">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"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":[{"orde...
    [ Message content over the limit has been removed. ]
...tatistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":199000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":129000000}},"flags":""}]}]}' contains 'priority' 66 times, not 57 times.</status>
</kw>
<kw name="Check Flow Stats Are Available" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:22.697823" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:22.705931" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/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,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":57,"packets-matched":"0"},"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":545000000}},"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":146000000}},"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":580000000}},"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":616000000}},"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":657000000}},"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":702000000}},"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":186000000}},"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":229000000}},"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":744000000}},"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":264000000}},"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":782000000}},"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":299000000}},"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":816000000}},"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":339000000}},"priority":202,"cookie_mask":"255","flow-name":"set-field-tcp-dst"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:22.706666" 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-08-10T02:07:22.680329" elapsed="0.026402"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.711628" level="INFO">{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":57,"packets-matched":"0"},"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":545000000}},"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":146000000}},"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":580000000}},"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":616000000}},"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":657000000}},"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":702000000}},"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":186000000}},"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":229000000}},"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":744000000}},"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":264000000}},"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":782000000}},"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":299000000}},"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":816000000}},"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":339000000}},"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":863000000}},"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":381000000}},"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":912000000}},"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":960000000}},"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":880000000}},"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":186000000}},"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":996000000}},"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":229000000}},"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":3,"nanosecond":19000000}},"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":270000000}},"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":3,"nanosecond":20000000}},"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":301000000}},"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":335000000}},"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":378000000}},"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":422000000}},"priority":16,"cookie_mask":"255","flow-name":"FooXf16","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"flags":""},{"id":"337","installHw":false,"table_id":2,"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":109000000}},"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":459000000}},"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":492000000}},"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":488000000}},"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":535000000}},"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":4,"nanosecond":26000000}},"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":572000000}},"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":731000000}},"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":610000000}},"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":650000000}},"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":688000000}},"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":726000000}},"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":815000000}},"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":762000000}},"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":847000000}},"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":70000000}},"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":800000000}},"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":882000000}},"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":112000000}},"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":840000000}},"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":930000000}},"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":149000000}},"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":964000000}},"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":916000000}},"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":945000000}},"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":972000000}},"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":449000000}},"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":421000000}},"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":""}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:22.707158" elapsed="0.004842"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.714588" 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-08-10T02:07:22.712153" elapsed="0.002602"/>
</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-08-10T02:07:22.679502" elapsed="0.035318"/>
</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-08-10T02:07:18.588695" elapsed="4.126175"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:22.717549" 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-08-10T02:07:22.715027" elapsed="0.002580"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:22.866328" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=7.465s, table=0, n_packets=12, n_bytes=992, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=4.092s, table=2, n_packets=0, n_bytes=0, priority=550,tun_src=192.168.0.10 actions=output:"s1-eth1"
 cookie=0x0, duration=4.176s, 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.208s, 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.243s, 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.291s, 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.380s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xdd, duration=4.325s, 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.321s, 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.387s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x24, duration=5.333s, 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.306s, 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.356s, 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.380s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=4.469s, 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.589s, 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.546s, 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.200s, 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.086s, 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.506s, table=2, n_packets=0, n_bytes=0, priority=209,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:0xa1f-&gt;tun_id
 cookie=0xa, duration=5.940s, table=2, n_packets=0, n_bytes=0, priority=10,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=dec_ttl
 cookie=0xb, duration=5.905s, 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.589s, 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.546s, 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.741s, 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.699s, 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.659s, 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.624s, 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.782s, 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.781s, table=2, n_packets=0, n_bytes=0, priority=156,ip,dl_vlan=78,dl_vlan_pcp=3,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=dec_ttl
 cookie=0x6b, duration=4.970s, table=2, n_packets=0, n_bytes=0, priority=107,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=ALL
 cookie=0x6c, duration=4.932s, 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.895s, 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.809s, 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.848s, 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.010s, 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.048s, 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.160s, 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.122s, 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.240s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=drop
 cookie=0x2b, duration=5.276s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=dec_ttl
 cookie=0x17, duration=5.509s, 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.430s, 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.472s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=TABLE
 cookie=0x14, duration=5.630s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=LOCAL
 cookie=0x13, duration=5.661s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=IN_PORT
 cookie=0x12, duration=5.695s, 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.738s, 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.819s, table=2, n_packets=0, n_bytes=0, priority=15,mpls,dl_vlan=78,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=dec_mpls_ttl
 cookie=0xe, duration=5.852s, table=2, n_packets=0, n_bytes=0, priority=14,arp,dl_src=00:00:fc:01:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,arp_spa=192.168.4.1,arp_tpa=10.21.22.23,arp_op=1,arp_sha=12:34:56:78:98:ab,arp_tha=fe:dc:ba:98:76:54 actions=CONTROLLER:60
 cookie=0x9, duration=5.976s, 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.017s, table=2, n_packets=0, n_bytes=0, priority=8,tcp,in_port=0,dl_src=00:00:00:11:23:00/ff:ff:ff:ff:ff:00,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=dec_ttl
 cookie=0x7, duration=6.062s, table=2, n_packets=0, n_bytes=0, priority=7,ip,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:ff:ff:ff:aa,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16,nw_proto=56,nw_tos=60,nw_ecn=1 actions=dec_ttl
 cookie=0x6, duration=6.104s, 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.142s, 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.176s, 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.223s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=drop
 cookie=0x2, duration=6.272s, 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-08-10T02:07:22.717758" elapsed="0.148806"/>
</kw>
<doc>Add all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-08-10T02:07:16.356489" elapsed="6.510214"/>
</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-08-10T02:07:22.877766" 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-08-10T02:07:22.877926" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:22.877617" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:22.878555" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:22.878110" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:22.879033" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:22.878747" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:22.879514" 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-08-10T02:07:22.879210" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:22.879962" 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-08-10T02:07:22.879692" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:22.880797" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:22.880136" elapsed="0.000692"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.881347" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:22.880996" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.881858" 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-08-10T02:07:22.881541" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.882387" 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-08-10T02:07:22.882047" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.882915" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:22.882600" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.883450" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:22.883116" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.883960" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:22.883645" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:22.877263" elapsed="0.006792"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.884622" 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-08-10T02:07:22.884208" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.885040" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:22.884801" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.894011" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:22.893698" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:22.923122" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:22.923446" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:22.923616" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:22.894203" elapsed="0.029448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.924223" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:22.923873" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.927358" 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-08-10T02:07:22.924505" elapsed="0.002935"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:22.930001" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:22.927554" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:22.927519" elapsed="0.002589"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:22.933539" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:22.933585" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:22.930301" elapsed="0.003306"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:22.935398" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:22.933680" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:22.933662" elapsed="0.001818"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:22.935515" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:07:22.935728" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:22.935772" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:22.893381" elapsed="0.042413"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:22.937925" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:22.936355" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:22.936321" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.938553" 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-08-10T02:07:22.938138" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.939116" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:22.938766" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:22.939190" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:22.939384" 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-08-10T02:07:22.936010" elapsed="0.003400"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:22.939570" 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-08-10T02:07:22.892782" elapsed="0.047254"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.947869" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:22.947568" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:22.985818" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:22.986796" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:22.987192" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:22.948024" elapsed="0.039206"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.988056" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:22.987485" elapsed="0.000673"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:22.993758" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;264000000&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;782000000&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;299000000&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;816000000&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;339000000&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;863000000&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;381000000&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;912000000&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;960000000&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;880000000&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;186000000&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;996000000&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;229000000&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;3&lt;/second&gt;&lt;nanosecond&gt;19000000&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;270000000&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;3&lt;/second&gt;&lt;nanosecond&gt;20000000&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;301000000&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;335000000&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;378000000&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;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&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;459000000&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;492000000&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;488000000&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;535000000&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;4&lt;/second&gt;&lt;nanosecond&gt;26000000&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;572000000&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;731000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;610000000&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;650000000&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;688000000&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;726000000&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;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;762000000&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;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;70000000&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;800000000&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;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;112000000&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;840000000&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;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;149000000&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;964000000&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;916000000&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;945000000&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;972000000&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;449000000&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;421000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:22.988512" elapsed="0.009749"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.000155" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:22.998368" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:22.998331" elapsed="0.001896"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.025571" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.025618" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:23.000390" elapsed="0.025251"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.027486" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.025720" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.025701" elapsed="0.001866"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.027602" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:23.027811" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:23.027854" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:22.947135" elapsed="0.080742"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.030082" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.028440" elapsed="0.001688"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.028422" elapsed="0.001727"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.030724" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.030297" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.031299" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.030944" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.031394" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:23.031572" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:23.028095" elapsed="0.003503"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:23.031753" 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-08-10T02:07:22.946489" elapsed="0.085712"/>
</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-08-10T02:07:22.873964" elapsed="0.158293"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:22.867129" elapsed="0.165267"/>
</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-08-10T02:07:23.043213" 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-08-10T02:07:23.043371" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:23.043068" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:23.043945" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee9d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:23.043551" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.044430" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:23.044122" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.044879" 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-08-10T02:07:23.044605" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.045318" 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-08-10T02:07:23.045052" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.046110" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:23.045510" elapsed="0.000631"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.046639" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.046293" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.047228" 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-08-10T02:07:23.046899" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.047772" 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-08-10T02:07:23.047440" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.048273" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.047963" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.048802" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.048485" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.049313" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee9d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.048996" 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-08-10T02:07:23.042710" elapsed="0.006717"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.049953" 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-08-10T02:07:23.049574" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.050413" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:23.050156" 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-08-10T02:07:23.058193" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.057888" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:23.066120" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:23.066308" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:23.066437" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.058364" elapsed="0.008099"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.066898" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.066621" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.071181" 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-08-10T02:07:23.067087" elapsed="0.004324"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.075597" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.071570" elapsed="0.004110"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.071527" elapsed="0.004176"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.078551" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.078600" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:23.075841" elapsed="0.002781"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.080423" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.078696" elapsed="0.001784"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.078678" elapsed="0.001826"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.080538" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:23.080731" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:23.080774" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:23.057576" elapsed="0.023220"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.082945" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.081327" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.081310" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.083570" 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-08-10T02:07:23.083158" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.084103" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.083756" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.084177" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.084369" 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-08-10T02:07:23.081003" 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-08-10T02:07:23.084555" 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-08-10T02:07:23.057011" elapsed="0.027993"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.092789" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.092486" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:23.113944" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:23.115058" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:23.115735" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.092946" elapsed="0.022850"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.116767" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.116164" elapsed="0.000704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.125106" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;264000000&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;782000000&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;299000000&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;816000000&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;339000000&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;863000000&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;381000000&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;912000000&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;960000000&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;880000000&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;186000000&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;996000000&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;229000000&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;3&lt;/second&gt;&lt;nanosecond&gt;19000000&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;270000000&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;3&lt;/second&gt;&lt;nanosecond&gt;20000000&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;301000000&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;335000000&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;378000000&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;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&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;459000000&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;492000000&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;488000000&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;535000000&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;4&lt;/second&gt;&lt;nanosecond&gt;26000000&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;572000000&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;731000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;610000000&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;650000000&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;688000000&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;726000000&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;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;762000000&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;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;70000000&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;800000000&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;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;112000000&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;840000000&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;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;149000000&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;964000000&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;916000000&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;945000000&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;972000000&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;449000000&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;421000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.117182" elapsed="0.008945"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.129261" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.126199" elapsed="0.003112"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.126180" elapsed="0.003168"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.153718" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.153765" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:23.129490" elapsed="0.024298"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.155636" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.153866" elapsed="0.001826"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.153847" elapsed="0.001870"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.155750" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:23.155945" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:23.155988" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:23.092095" elapsed="0.063915"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.158172" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.156598" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.156579" elapsed="0.001659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.158807" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.158403" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.159375" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.159009" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.159452" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.159628" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:23.156230" elapsed="0.003423"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:23.159807" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:23.091482" elapsed="0.068772"/>
</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-08-10T02:07:23.039463" elapsed="0.120851"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:23.032669" elapsed="0.127780"/>
</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-08-10T02:07:23.171455" 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-08-10T02:07:23.171619" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:23.171300" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:23.172188" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:23.171799" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.172666" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:23.172383" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.173108" 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-08-10T02:07:23.172842" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.173566" 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-08-10T02:07:23.173281" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.174311" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:23.173738" elapsed="0.000623"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.174847" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.174517" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.175449" 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-08-10T02:07:23.175105" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.175968" 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-08-10T02:07:23.175643" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.176486" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.176158" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.177001" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.176685" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.177527" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.177193" 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-08-10T02:07:23.170942" elapsed="0.006681"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.178148" 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-08-10T02:07:23.177771" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.178579" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:23.178325" 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-08-10T02:07:23.186260" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.185960" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:23.193131" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:23.193324" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:23.193451" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.186432" elapsed="0.007045"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.193879" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.193632" elapsed="0.000291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.196672" 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-08-10T02:07:23.194063" elapsed="0.002686"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.199358" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.196889" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.196861" elapsed="0.002600"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.203308" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.203393" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:23.199654" elapsed="0.003775"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.205265" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.203554" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.203523" elapsed="0.001836"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.205394" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.205586" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:23.205628" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:23.185649" elapsed="0.020002"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.207781" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.206182" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.206164" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.208402" 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-08-10T02:07:23.207992" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.208933" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.208588" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.209007" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.209183" 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-08-10T02:07:23.205858" elapsed="0.003350"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:23.209380" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:23.185078" elapsed="0.024746"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.217599" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.217280" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:23.241891" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:23.242375" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:23.242667" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.217753" elapsed="0.024941"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.243129" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.242853" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.245818" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;264000000&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;782000000&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;299000000&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;816000000&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;339000000&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;863000000&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;381000000&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;912000000&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;960000000&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;880000000&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;186000000&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;996000000&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;229000000&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;3&lt;/second&gt;&lt;nanosecond&gt;19000000&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;270000000&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;3&lt;/second&gt;&lt;nanosecond&gt;20000000&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;301000000&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;335000000&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;378000000&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;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&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;459000000&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;492000000&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;488000000&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;535000000&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;4&lt;/second&gt;&lt;nanosecond&gt;26000000&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;572000000&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;731000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;610000000&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;650000000&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;688000000&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;726000000&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;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;762000000&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;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;70000000&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;800000000&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;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;112000000&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;840000000&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;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;149000000&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;964000000&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;916000000&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;945000000&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;972000000&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;449000000&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;421000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.243327" elapsed="0.003465"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.249038" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.246863" elapsed="0.002244"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.246844" elapsed="0.002294"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.277591" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.277638" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:23.249354" elapsed="0.028307"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.279474" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.277740" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.277721" elapsed="0.001836"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.279591" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:23.279784" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:23.279827" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:23.216909" elapsed="0.062940"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.281977" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.280414" elapsed="0.001607"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.280396" elapsed="0.001647"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.282628" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.282187" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.283163" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.282815" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.283254" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.283455" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:23.280066" 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-08-10T02:07:23.283638" 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-08-10T02:07:23.216288" elapsed="0.067795"/>
</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-08-10T02:07:23.167696" elapsed="0.116441"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:23.160728" elapsed="0.123523"/>
</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-08-10T02:07:23.295225" 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-08-10T02:07:23.295376" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:23.295065" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:23.295952" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4b80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:23.295558" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.296422" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:23.296129" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.296865" 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-08-10T02:07:23.296599" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.297300" 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-08-10T02:07:23.297036" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.298097" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:23.297490" elapsed="0.000637"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.298627" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.298280" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.299178" 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-08-10T02:07:23.298858" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.299730" 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-08-10T02:07:23.299404" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.300229" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.299920" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.300754" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.300439" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.301262" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4b80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.300946" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:23.294740" elapsed="0.006634"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.301898" 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-08-10T02:07:23.301520" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.302311" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:23.302075" 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-08-10T02:07:23.310059" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.309760" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:23.317282" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:23.317511" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:23.317617" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.310215" elapsed="0.007428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.318054" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.317805" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.320783" 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-08-10T02:07:23.318238" elapsed="0.002667"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.323500" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.321002" elapsed="0.002566"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.320976" elapsed="0.002623"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.327641" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.327718" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:23.323789" elapsed="0.003969"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.329559" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.327864" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.327842" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.329671" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:23.329860" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:23.329904" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:23.309446" elapsed="0.020480"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.332076" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.330479" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.330462" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.332699" 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-08-10T02:07:23.332288" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.333231" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.332885" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.333307" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:07:23.333503" 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-08-10T02:07:23.330133" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:23.333685" 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-08-10T02:07:23.308878" elapsed="0.025252"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.341902" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.341606" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:23.365142" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:23.365623" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:23.365904" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.342055" elapsed="0.023875"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.366353" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.366087" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.369033" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;264000000&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;782000000&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;299000000&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;816000000&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;339000000&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;863000000&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;381000000&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;912000000&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;960000000&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;880000000&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;186000000&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;996000000&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;229000000&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;3&lt;/second&gt;&lt;nanosecond&gt;19000000&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;270000000&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;3&lt;/second&gt;&lt;nanosecond&gt;20000000&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;301000000&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;335000000&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;378000000&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;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&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;459000000&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;492000000&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;488000000&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;535000000&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;4&lt;/second&gt;&lt;nanosecond&gt;26000000&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;572000000&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;731000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;610000000&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;650000000&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;688000000&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;726000000&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;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;762000000&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;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;70000000&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;800000000&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;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;112000000&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;840000000&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;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;149000000&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;964000000&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;916000000&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;945000000&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;972000000&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;449000000&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;421000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.366540" elapsed="0.003610"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.372020" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.370223" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.370204" elapsed="0.001889"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.399732" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.399779" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:23.372230" elapsed="0.027573"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.401612" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.399880" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.399862" elapsed="0.001831"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.401727" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.401920" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:23.401963" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:23.341216" elapsed="0.060770"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.404170" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.402554" elapsed="0.001662"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.402536" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.404804" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.404402" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.405370" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.404991" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.405449" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:23.405639" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:23.402199" 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-08-10T02:07:23.405818" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:23.340609" elapsed="0.065656"/>
</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-08-10T02:07:23.291493" elapsed="0.114827"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:23.284523" elapsed="0.121927"/>
</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-08-10T02:07:23.417429" 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-08-10T02:07:23.417561" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:23.417276" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:23.418136" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:23.417739" elapsed="0.000425"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.418607" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:23.418313" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.419047" 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-08-10T02:07:23.418781" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.419547" 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-08-10T02:07:23.419219" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.420391" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:23.419722" elapsed="0.000701"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.420903" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.420576" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.421470" 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-08-10T02:07:23.421132" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.421984" 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-08-10T02:07:23.421663" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.422502" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.422175" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.423010" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.422695" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.423547" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.423203" 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-08-10T02:07:23.416949" elapsed="0.006695"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.424168" 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-08-10T02:07:23.423791" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.424602" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:23.424365" 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-08-10T02:07:23.432346" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.432035" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:23.439440" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:23.439916" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:23.440067" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.432504" elapsed="0.007598"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.440695" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.440322" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.443876" 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-08-10T02:07:23.440952" elapsed="0.003050"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.446563" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.444100" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.444073" elapsed="0.002590"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.450941" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.451004" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:23.446857" elapsed="0.004178"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.453549" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.451138" elapsed="0.002489"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.451112" elapsed="0.002547"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.453707" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:23.453973" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:23.454033" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:23.431725" elapsed="0.022338"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.457003" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.454843" elapsed="0.002205"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.454819" elapsed="0.002251"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.457625" 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-08-10T02:07:23.457214" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.458153" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.457810" elapsed="0.000369"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.458227" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.458422" 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-08-10T02:07:23.454386" elapsed="0.004061"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:23.458606" 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-08-10T02:07:23.431142" elapsed="0.027917"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.466814" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.466520" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:23.488414" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:23.488877" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:23.489156" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.466968" elapsed="0.022215"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.489617" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.489363" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.492283" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;264000000&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;782000000&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;299000000&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;816000000&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;339000000&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;863000000&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;381000000&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;912000000&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;960000000&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;880000000&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;186000000&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;996000000&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;229000000&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;3&lt;/second&gt;&lt;nanosecond&gt;19000000&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;270000000&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;3&lt;/second&gt;&lt;nanosecond&gt;20000000&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;301000000&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;335000000&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;378000000&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;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&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;459000000&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;492000000&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;488000000&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;535000000&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;4&lt;/second&gt;&lt;nanosecond&gt;26000000&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;572000000&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;731000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;610000000&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;650000000&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;688000000&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;726000000&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;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;762000000&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;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;70000000&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;800000000&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;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;112000000&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;840000000&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;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;149000000&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;964000000&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;916000000&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;945000000&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;972000000&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;449000000&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;421000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.489803" elapsed="0.003489"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.495114" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.493378" elapsed="0.001784"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.493358" elapsed="0.001826"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.526893" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.526942" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:23.495321" elapsed="0.031644"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.528849" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.527046" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.527027" elapsed="0.001903"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.528965" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.529161" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:23.529204" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:23.466131" elapsed="0.063096"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.531490" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.529807" elapsed="0.001745"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.529789" elapsed="0.001792"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.532144" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.531732" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.532702" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.532347" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.532777" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.532954" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:23.529473" elapsed="0.003506"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:23.533133" 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-08-10T02:07:23.465523" elapsed="0.068082"/>
</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-08-10T02:07:23.413668" elapsed="0.119995"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:23.406692" elapsed="0.127088"/>
</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-08-10T02:07:23.544637" 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-08-10T02:07:23.544772" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:23.544494" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:23.545367" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:23.544949" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.545830" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:23.545552" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.546271" 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-08-10T02:07:23.546005" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:23.546727" 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-08-10T02:07:23.546461" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.547554" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:23.546900" elapsed="0.000702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.548092" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.547764" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.548669" 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-08-10T02:07:23.548324" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.549190" 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-08-10T02:07:23.548867" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.549713" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.549401" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.550220" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.549906" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.550747" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:23.550429" 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-08-10T02:07:23.544152" elapsed="0.006690"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.551380" 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-08-10T02:07:23.550989" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.551832" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:23.551591" 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-08-10T02:07:23.559725" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.559396" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:23.588997" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:23.589221" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:23.589329" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.559882" elapsed="0.029503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.589795" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:23.589545" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.592050" 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-08-10T02:07:23.589980" elapsed="0.002159"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.593957" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.592209" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.592191" elapsed="0.001836"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:23.597035" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:23.597080" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:23.594165" elapsed="0.002938"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:23.598880" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:23.597177" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.597159" elapsed="0.001800"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:23.598993" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:23.599184" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:23.599227" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:23.559066" elapsed="0.040184"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:23.601434" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:23.599834" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:23.599817" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.602036" 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-08-10T02:07:23.601644" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.602584" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:23.602221" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:23.602660" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:23.602835" 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-08-10T02:07:23.599476" elapsed="0.003385"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:23.603012" 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-08-10T02:07:23.558516" elapsed="0.044957"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:23.611415" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:23.611101" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:24.312119" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:24.313258" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:24.313988" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:23.611575" elapsed="0.702477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.315074" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:24.314471" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.320813" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;264000000&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;782000000&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;299000000&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;816000000&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;339000000&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;863000000&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;381000000&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;912000000&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;960000000&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;880000000&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;186000000&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;996000000&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;229000000&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;3&lt;/second&gt;&lt;nanosecond&gt;19000000&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;270000000&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;3&lt;/second&gt;&lt;nanosecond&gt;20000000&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;301000000&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;335000000&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;378000000&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;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&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;459000000&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;492000000&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;488000000&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;535000000&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;4&lt;/second&gt;&lt;nanosecond&gt;26000000&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;572000000&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;731000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;610000000&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;650000000&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;688000000&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;726000000&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;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;762000000&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;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;70000000&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;800000000&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;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;112000000&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;840000000&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;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;149000000&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;964000000&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;916000000&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;945000000&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;972000000&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;449000000&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;421000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:24.315534" elapsed="0.006824"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:24.324177" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:24.322436" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:24.322415" elapsed="0.001835"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:24.349256" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:24.349304" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:24.324407" elapsed="0.024919"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:24.351141" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:24.349423" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:24.349404" elapsed="0.001817"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:24.351255" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:24.351476" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:24.351520" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:23.610731" elapsed="0.740811"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:24.353742" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:24.352117" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:24.352100" elapsed="0.001709"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.354386" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:24.353960" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.354928" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:24.354577" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:24.355003" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:24.355193" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:24.351779" 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-08-10T02:07:24.355391" 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-08-10T02:07:23.610095" elapsed="0.745758"/>
</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-08-10T02:07:23.540879" elapsed="0.815030"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:23.534031" elapsed="0.822016"/>
</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-08-10T02:07:24.367033" 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-08-10T02:07:24.367183" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:24.366890" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:24.367820" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe140e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:24.367380" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:24.368283" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:24.368001" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:24.368781" 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-08-10T02:07:24.368478" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:24.369242" 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-08-10T02:07:24.368960" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:24.370158" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:24.369433" elapsed="0.000756"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.370687" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:24.370357" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.371236" 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-08-10T02:07:24.370917" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.371773" 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-08-10T02:07:24.371445" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.372273" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:24.371964" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.372812" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:24.372485" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.373328" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe140e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:24.373005" 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-08-10T02:07:24.366558" elapsed="0.006886"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.373967" 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-08-10T02:07:24.373590" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.374404" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:24.374145" 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-08-10T02:07:24.382349" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:24.382021" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:24.390150" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:24.390408" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:24.390517" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:24.382511" elapsed="0.008032"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.390955" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:24.390705" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.393313" 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-08-10T02:07:24.391176" elapsed="0.002215"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:24.395902" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:24.393464" elapsed="0.002506"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:24.393443" elapsed="0.002558"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:24.400406" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:24.400471" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:24.396193" elapsed="0.004310"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:24.402668" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:24.400607" elapsed="0.002117"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:24.400581" elapsed="0.002167"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:24.402782" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:24.402975" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:24.403018" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:24.381708" elapsed="0.021333"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:24.405350" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:24.403599" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:24.403582" elapsed="0.001838"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.405964" 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-08-10T02:07:24.405568" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.406514" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:24.406148" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:24.406588" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:24.406763" 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-08-10T02:07:24.403250" elapsed="0.003538"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:24.406941" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:24.381136" elapsed="0.026266"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.415127" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:24.414831" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:24.436146" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:24.436637" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:24.436950" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:24.415282" elapsed="0.021695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.437404" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:24.437136" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.439893" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;702000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;186000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;229000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;744000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;264000000&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;782000000&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;299000000&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;816000000&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;339000000&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;863000000&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;381000000&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;912000000&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;960000000&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;880000000&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;186000000&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;996000000&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;229000000&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;3&lt;/second&gt;&lt;nanosecond&gt;19000000&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;270000000&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;3&lt;/second&gt;&lt;nanosecond&gt;20000000&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;301000000&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;335000000&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;378000000&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;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&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;459000000&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;492000000&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;488000000&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;535000000&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;4&lt;/second&gt;&lt;nanosecond&gt;26000000&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;572000000&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;731000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;610000000&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;650000000&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;688000000&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;726000000&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;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;762000000&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;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;70000000&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;800000000&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;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;112000000&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;840000000&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;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;149000000&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;964000000&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;916000000&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;945000000&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;972000000&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;449000000&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;421000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:24.437596" elapsed="0.003404"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:24.442823" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:24.441074" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:24.441055" elapsed="0.001838"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:24.506320" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:24.506406" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:24.443032" elapsed="0.063399"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:24.508441" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:24.506570" elapsed="0.001932"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:24.506534" elapsed="0.001995"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:24.508568" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:24.508790" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:24.508835" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:24.414460" elapsed="0.094397"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:24.511118" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:24.509537" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:24.509519" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.511812" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:24.511354" elapsed="0.000486"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.512366" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:24.511999" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:24.512442" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:24.512620" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:24.509153" elapsed="0.003492"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:24.512800" 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-08-10T02:07:24.413833" elapsed="0.099451"/>
</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-08-10T02:07:24.363278" elapsed="0.150080"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:24.356390" elapsed="0.157099"/>
</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-08-10T02:07:24.524434" 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-08-10T02:07:24.524609" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:24.524269" elapsed="0.000369"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:24.525268" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:24.524791" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:24.525755" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:24.525467" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:24.526195" 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-08-10T02:07:24.525929" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:24.526652" 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-08-10T02:07:24.526386" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:24.527735" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:24.526827" elapsed="0.000939"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.528252" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:24.527922" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.528847" 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-08-10T02:07:24.528525" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.529391" 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-08-10T02:07:24.529051" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.529889" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:24.529581" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.530411" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:24.530081" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.530920" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:24.530604" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:24.523935" elapsed="0.007079"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.531553" 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-08-10T02:07:24.531159" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:24.531971" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:24.531733" 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-08-10T02:07:24.539683" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:24.539373" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.170906" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.171607" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:25.171923" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:24.539839" elapsed="0.632150"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.173298" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.172603" elapsed="0.000844"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.178767" 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-08-10T02:07:25.173795" elapsed="0.005036"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.180671" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.178916" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.178892" elapsed="0.001856"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.184048" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.184094" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:25.180891" 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-08-10T02:07:25.186079" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.184192" elapsed="0.001944"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.184173" elapsed="0.002006"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.186215" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:07:25.186448" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:25.186493" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:24.539045" elapsed="0.647471"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.188711" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.187102" elapsed="0.001655"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.187084" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.189369" 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-08-10T02:07:25.188927" elapsed="0.000471"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.189924" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.189559" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.190000" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.190177" 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-08-10T02:07:25.186758" 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-08-10T02:07:25.190380" 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-08-10T02:07:24.538496" elapsed="0.652353"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.198721" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.198415" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.211096" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.211768" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:25.212175" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.198881" elapsed="0.013330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.212818" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.212458" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.216357" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.213077" elapsed="0.004740"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.220224" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.217918" elapsed="0.002366"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.217891" elapsed="0.002418"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.245345" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.245394" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:25.220512" elapsed="0.024905"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.247238" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.245497" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.245478" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.247370" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:25.247566" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:25.247610" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:25.198021" elapsed="0.049610"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.249770" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.248186" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.248168" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.250439" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.250012" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.250980" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.250633" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.251055" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.251232" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:25.247855" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.251460" 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-08-10T02:07:25.197367" elapsed="0.054548"/>
</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-08-10T02:07:24.520668" elapsed="0.731304"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:24.513839" elapsed="0.738261"/>
</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-08-10T02:07:25.263023" 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-08-10T02:07:25.263182" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:25.262876" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:25.263817" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0368e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:25.263381" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.264278" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:25.263995" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.264744" 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-08-10T02:07:25.264471" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.265182" 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-08-10T02:07:25.264917" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.266280" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:25.265372" elapsed="0.000939"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.266819" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.266486" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.267396" 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-08-10T02:07:25.267055" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.267913" 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-08-10T02:07:25.267590" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.268431" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.268104" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.268939" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.268626" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.269463" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0368e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.269131" 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-08-10T02:07:25.262544" elapsed="0.007020"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.270101" 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-08-10T02:07:25.269712" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.270541" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:25.270280" 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-08-10T02:07:25.278257" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.277924" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.284400" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.284657" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:25.284808" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.278431" elapsed="0.006413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.285481" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.285107" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.288688" 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-08-10T02:07:25.285744" elapsed="0.003029"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.291306" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.288868" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.288842" elapsed="0.002585"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.295571" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.295616" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:25.291628" elapsed="0.004011"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.297543" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.295713" elapsed="0.001891"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.295695" elapsed="0.001933"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.297667" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:25.297860" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:25.297903" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:25.277612" elapsed="0.020313"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.300071" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.298495" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.298478" elapsed="0.001659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.300769" 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-08-10T02:07:25.300282" elapsed="0.000513"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.301307" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.300957" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.301403" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:25.301587" 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-08-10T02:07:25.298148" elapsed="0.003464"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.301766" 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-08-10T02:07:25.277044" elapsed="0.025204"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.309977" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.309682" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.325944" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.327073" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:25.327738" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.310176" elapsed="0.017623"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.328777" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.328158" elapsed="0.000722"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.334526" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.329195" elapsed="0.006284"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.337292" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.335553" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.335531" elapsed="0.001847"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.361386" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.361435" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:25.337516" elapsed="0.023943"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.363292" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.361538" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.361519" elapsed="0.001869"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.363422" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.363616" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:25.363659" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:25.309291" elapsed="0.054391"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.365885" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.364225" elapsed="0.001706"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.364207" elapsed="0.001746"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.366597" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.366100" elapsed="0.000525"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.367140" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.366789" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.367215" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.367410" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:25.363897" elapsed="0.003539"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.367599" 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-08-10T02:07:25.308685" elapsed="0.059363"/>
</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-08-10T02:07:25.259257" elapsed="0.108846"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:25.252436" elapsed="0.115782"/>
</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-08-10T02:07:25.379118" 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-08-10T02:07:25.379251" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:25.378980" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:25.379863" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c4f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:25.379446" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.380316" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:25.380039" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.380776" 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-08-10T02:07:25.380509" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.381214" 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-08-10T02:07:25.380950" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.382305" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:25.381402" elapsed="0.000949"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.382840" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.382509" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.383415" 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-08-10T02:07:25.383073" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.383934" 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-08-10T02:07:25.383609" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.384451" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.384124" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.384961" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.384645" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.385489" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c4f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.385155" 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-08-10T02:07:25.378652" elapsed="0.006934"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.386114" 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-08-10T02:07:25.385733" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.386563" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:25.386306" 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-08-10T02:07:25.394381" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.394047" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.401607" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.401930" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:25.402083" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.394537" elapsed="0.007582"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.402791" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.402433" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.405982" 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-08-10T02:07:25.403051" elapsed="0.003018"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.408691" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.406166" elapsed="0.002594"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.406138" elapsed="0.002653"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.413281" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.413368" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:25.408984" elapsed="0.004419"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.415678" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.413506" elapsed="0.002229"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.413480" elapsed="0.002279"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.415793" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.415986" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:25.416031" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:25.393734" elapsed="0.022319"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.418189" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.416611" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.416593" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.418830" 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-08-10T02:07:25.418432" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.419380" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.419016" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.419456" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.419631" 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-08-10T02:07:25.416264" 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-08-10T02:07:25.419810" 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-08-10T02:07:25.393168" elapsed="0.027091"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.428103" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.427807" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.445918" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.447005" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:25.447670" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.428258" elapsed="0.019473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.448696" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.448091" elapsed="0.000707"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.454456" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.449119" elapsed="0.006534"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.457473" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.455725" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.455706" elapsed="0.001839"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.481428" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.481475" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:25.457683" elapsed="0.023816"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.483294" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.481578" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.481559" elapsed="0.001833"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.483426" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:25.483624" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:25.483668" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:25.427428" elapsed="0.056262"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.485825" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.484236" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.484218" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.486505" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.486037" elapsed="0.000496"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.487045" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.486695" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.487119" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.487296" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:25.483906" elapsed="0.003415"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.487497" 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-08-10T02:07:25.426791" elapsed="0.061159"/>
</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-08-10T02:07:25.375390" elapsed="0.112616"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:25.368502" elapsed="0.119617"/>
</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-08-10T02:07:25.498950" 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-08-10T02:07:25.499091" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:25.498801" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:25.499722" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e41d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:25.499283" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.500179" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:25.499901" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.500671" 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-08-10T02:07:25.500372" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.501127" 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-08-10T02:07:25.500860" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.502198" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:25.501303" elapsed="0.000927"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.502796" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.502451" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.503388" 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-08-10T02:07:25.503045" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.503910" 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-08-10T02:07:25.503583" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.504432" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.504101" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.504988" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.504652" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.505521" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e41d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.505185" 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-08-10T02:07:25.498474" elapsed="0.007144"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.506147" 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-08-10T02:07:25.505766" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.506594" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:25.506353" 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-08-10T02:07:25.514416" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.514086" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.521825" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.522054" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:25.522162" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.514571" elapsed="0.007616"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.522674" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.522414" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.525884" 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-08-10T02:07:25.522912" elapsed="0.003057"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.528558" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.526065" elapsed="0.002578"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.526039" elapsed="0.002639"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.532714" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.532759" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:25.528870" elapsed="0.003912"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.534739" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.532856" elapsed="0.001938"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.532838" elapsed="0.001980"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.534851" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:25.535044" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:25.535087" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:25.513770" elapsed="0.021339"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.537245" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.535669" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.535651" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.537875" 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-08-10T02:07:25.537475" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.538454" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.538060" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.538530" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.538707" 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-08-10T02:07:25.535319" elapsed="0.003412"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.538885" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:25.513200" elapsed="0.026128"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.547144" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.546847" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.563229" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.564297" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:25.564967" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.547298" elapsed="0.017729"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.565984" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.565418" elapsed="0.000668"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.571661" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.566486" elapsed="0.006127"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.574446" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.572684" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.572665" elapsed="0.001853"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.596771" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.596818" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:25.574657" elapsed="0.022184"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.598669" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.596918" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.596899" elapsed="0.001850"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.598782" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:25.598974" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:25.599017" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:25.546468" elapsed="0.052571"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.601171" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.599600" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.599582" elapsed="0.001655"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.601794" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.601398" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.602325" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.601980" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.602418" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.602627" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:25.599253" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.602806" elapsed="0.000379"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:25.545819" elapsed="0.057427"/>
</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-08-10T02:07:25.495198" elapsed="0.108104"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:25.488387" elapsed="0.115046"/>
</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-08-10T02:07:25.614279" 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-08-10T02:07:25.614429" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:25.614144" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:25.615052" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a7a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:25.614637" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.615522" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:25.615228" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.615961" 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-08-10T02:07:25.615695" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.616422" 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-08-10T02:07:25.616133" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.619217" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:25.616600" elapsed="0.002649"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.619751" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.619421" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.620301" 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-08-10T02:07:25.619983" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.620832" 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-08-10T02:07:25.620511" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.621328" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.621021" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.621855" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.621537" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.622386" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a7a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.622047" 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-08-10T02:07:25.613815" elapsed="0.008679"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.623016" 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-08-10T02:07:25.622641" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.623445" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:25.623191" 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-08-10T02:07:25.631194" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.630855" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.639925" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.640285" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:25.640541" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.631380" elapsed="0.009199"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.641153" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.640802" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.644379" 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-08-10T02:07:25.641436" elapsed="0.003032"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.647040" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.644567" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.644540" elapsed="0.002600"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.651567" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.651630" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:25.647358" elapsed="0.004304"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.654110" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.651766" elapsed="0.002422"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.651740" elapsed="0.002481"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.654269" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:25.654601" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:25.654670" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:25.630484" elapsed="0.024218"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.657237" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.655488" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.655463" elapsed="0.001842"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.657869" 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-08-10T02:07:25.657467" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.658420" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.658055" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.658496" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.658690" 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-08-10T02:07:25.655000" elapsed="0.003716"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.658869" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:25.629916" elapsed="0.029396"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.667089" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.666794" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.682999" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.683680" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:25.684095" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.667244" elapsed="0.016889"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.684733" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.684378" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.688229" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.684993" elapsed="0.004573"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.692212" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.689665" elapsed="0.002616"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.689638" elapsed="0.002673"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.721009" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.721056" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:25.692527" elapsed="0.028552"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.722911" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.721159" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.721140" elapsed="0.001851"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.723026" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:25.723220" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:25.723264" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:25.666398" elapsed="0.056888"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.725470" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.723876" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.723858" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.726081" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.725682" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.726677" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.726270" elapsed="0.000438"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.726762" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:25.726943" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:25.723544" elapsed="0.003424"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.727124" 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-08-10T02:07:25.665770" elapsed="0.061825"/>
</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-08-10T02:07:25.610458" elapsed="0.117194"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:25.603675" elapsed="0.124094"/>
</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-08-10T02:07:25.738665" 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-08-10T02:07:25.738807" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:25.738496" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:25.739406" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:25.738985" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.739862" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:25.739586" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.740301" 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-08-10T02:07:25.740037" elapsed="0.000289"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.740759" 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-08-10T02:07:25.740493" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.741600" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:25.740931" elapsed="0.000700"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.742108" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.741784" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.742703" 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-08-10T02:07:25.742353" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.743229" 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-08-10T02:07:25.742904" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.743750" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.743439" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.744257" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.743943" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.744788" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.744466" 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-08-10T02:07:25.738155" elapsed="0.006729"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.745426" 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-08-10T02:07:25.745031" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.745845" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:25.745609" 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-08-10T02:07:25.753763" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.753464" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.760943" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.761149" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:25.761255" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.753919" elapsed="0.007362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.761714" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.761465" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.764158" 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-08-10T02:07:25.761901" elapsed="0.002384"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.766856" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.764406" elapsed="0.002518"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.764379" elapsed="0.002576"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.771115" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.771180" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:25.767146" elapsed="0.004065"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.773077" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.771313" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.771288" elapsed="0.001868"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.773189" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:25.773397" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:25.773442" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:25.753135" elapsed="0.020329"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.775627" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.774002" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.773985" elapsed="0.001710"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.776232" 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-08-10T02:07:25.775840" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.776780" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.776434" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.776855" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.777030" 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-08-10T02:07:25.773675" elapsed="0.003381"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.777208" 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-08-10T02:07:25.752582" elapsed="0.025085"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.787380" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.787063" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.798310" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.799439" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:25.800102" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.787541" elapsed="0.012621"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.801115" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.800554" elapsed="0.000661"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.806865" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.801571" elapsed="0.006658"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.810037" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.808300" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.808281" elapsed="0.001828"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.836396" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.836444" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:25.810245" elapsed="0.026222"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.838233" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.836546" elapsed="0.001742"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.836527" elapsed="0.001785"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.838379" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:25.838589" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:25.838635" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:25.786654" elapsed="0.052003"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.840853" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.839258" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.839239" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.841482" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.841067" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.842024" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.841672" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.842099" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:25.842276" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:25.838925" elapsed="0.003376"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.842475" 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-08-10T02:07:25.786023" elapsed="0.056909"/>
</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-08-10T02:07:25.734890" elapsed="0.108099"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:25.728021" elapsed="0.115080"/>
</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-08-10T02:07:25.853891" 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-08-10T02:07:25.854019" 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-08-10T02:07:25.853758" elapsed="0.000290"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:25.854613" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecc15f30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:25.854197" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.855121" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:25.854824" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.855585" 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-08-10T02:07:25.855298" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.856023" 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-08-10T02:07:25.855758" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.856862" 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-08-10T02:07:25.856197" elapsed="0.000695"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.857387" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.857045" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.857943" 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-08-10T02:07:25.857620" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.858478" 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-08-10T02:07:25.858137" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.859002" 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-08-10T02:07:25.858676" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.859530" 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-08-10T02:07:25.859197" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.860041" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecc15f30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.859725" 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-08-10T02:07:25.853432" elapsed="0.006705"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.860684" 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-08-10T02:07:25.860284" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.861101" 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-08-10T02:07:25.860864" 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-08-10T02:07:25.869087" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.868792" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.876668" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.876873" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:25.876980" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.869242" elapsed="0.007763"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.877441" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.877164" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.879906" 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-08-10T02:07:25.877634" elapsed="0.002475"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.884229" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.880266" elapsed="0.004105"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.880224" elapsed="0.004199"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.889150" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.889196" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:25.884731" elapsed="0.004487"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.891006" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.889293" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.889274" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.891119" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:25.891311" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:25.891374" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:25.868472" elapsed="0.022926"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.893524" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.891935" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.891918" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.894133" 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-08-10T02:07:25.893740" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.894682" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.894318" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.894757" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.894961" 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-08-10T02:07:25.891608" elapsed="0.003379"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.895141" 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-08-10T02:07:25.867902" elapsed="0.027707"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.903614" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.903289" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:25.920485" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:25.921555" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:25.922213" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.903769" elapsed="0.018505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.923270" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.922672" elapsed="0.000736"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.928469" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:25.923733" elapsed="0.006188"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.932550" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.930023" elapsed="0.002595"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.929997" elapsed="0.002652"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.961379" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:25.961427" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:25.932840" elapsed="0.028610"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:25.963249" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:25.961529" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.961510" elapsed="0.001819"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:25.963381" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:25.963580" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:25.963624" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:25.902903" elapsed="0.060743"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:25.965826" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:25.964197" elapsed="0.001674"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:25.964180" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.966456" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.966038" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.967044" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:25.966645" elapsed="0.000426"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:25.967122" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:25.967301" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:25.963862" elapsed="0.003465"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:25.967510" elapsed="0.000537"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:25.902234" elapsed="0.065876"/>
</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-08-10T02:07:25.850163" elapsed="0.118005"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:25.843354" elapsed="0.124927"/>
</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-08-10T02:07:25.979103" 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-08-10T02:07:25.979232" 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-08-10T02:07:25.978967" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:25.979824" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531ad0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:25.979428" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.980279" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:25.980003" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.980743" 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-08-10T02:07:25.980475" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:25.981180" 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-08-10T02:07:25.980916" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:25.982010" 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-08-10T02:07:25.981369" elapsed="0.000672"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.982535" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.982193" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.983127" 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-08-10T02:07:25.982766" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.983677" 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-08-10T02:07:25.983323" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.984178" 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-08-10T02:07:25.983869" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.984707" 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-08-10T02:07:25.984389" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.985219" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531ad0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:25.984902" 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-08-10T02:07:25.978627" elapsed="0.006687"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.985860" 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-08-10T02:07:25.985480" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:25.986278" 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-08-10T02:07:25.986040" 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-08-10T02:07:25.994194" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:25.993898" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.002574" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.002890" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:26.003060" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:25.994372" elapsed="0.008731"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.003712" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.003360" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.006822" 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-08-10T02:07:26.003971" elapsed="0.002985"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.009525" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.007074" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.007047" elapsed="0.002577"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.013182" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.013227" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:26.009817" elapsed="0.003432"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.015047" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.013323" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.013304" elapsed="0.001831"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.015170" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.015382" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:26.015426" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:25.993583" elapsed="0.021866"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.017571" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.015986" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.015968" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.018172" 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-08-10T02:07:26.017781" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.018719" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.018372" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.018793" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.018970" 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-08-10T02:07:26.015658" elapsed="0.003337"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.019176" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:25.993018" elapsed="0.026626"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.027645" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.027324" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.041746" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.042811" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:26.043521" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.027802" elapsed="0.015790"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.044560" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.043964" elapsed="0.000698"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.049270" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.044978" elapsed="0.005711"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.053238" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.050789" elapsed="0.002518"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.050763" elapsed="0.002595"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.081130" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.081178" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:26.053552" elapsed="0.027649"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.083022" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.081279" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.081260" elapsed="0.001855"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.083150" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:26.083366" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:26.083411" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:26.026916" elapsed="0.056518"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.085568" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.083982" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.083964" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.086178" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.085780" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.086729" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.086379" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.086804" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.086981" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:26.083651" elapsed="0.003356"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.087185" 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-08-10T02:07:26.026277" elapsed="0.061379"/>
</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-08-10T02:07:25.975377" elapsed="0.112335"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:25.968538" elapsed="0.119288"/>
</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-08-10T02:07:26.098652" 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-08-10T02:07:26.098783" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.098508" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:26.099373" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeede0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:26.098960" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.099827" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:26.099551" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.100264" 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-08-10T02:07:26.100000" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.100719" 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-08-10T02:07:26.100454" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.101473" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.100891" elapsed="0.000612"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.101978" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.101655" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.102544" 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-08-10T02:07:26.102207" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.103062" 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-08-10T02:07:26.102741" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.103616" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.103284" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.104124" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.103809" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.104653" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeede0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.104316" 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-08-10T02:07:26.098164" elapsed="0.006584"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.105269" 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-08-10T02:07:26.104894" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.105706" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:26.105465" 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-08-10T02:07:26.113594" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.113275" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.119895" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.120096" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:26.120201" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.113749" elapsed="0.006478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.120728" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.120411" elapsed="0.000391"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.123841" 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-08-10T02:07:26.120999" elapsed="0.002963"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.126509" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.124059" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.124033" elapsed="0.002575"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.130840" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.130904" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:26.126800" elapsed="0.004136"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.132986" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.131038" elapsed="0.002003"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.131012" elapsed="0.002053"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.133099" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.133291" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:26.133350" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:26.112965" elapsed="0.020410"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.135636" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.133917" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.133900" elapsed="0.001804"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.136242" 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-08-10T02:07:26.135849" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.136796" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.136445" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.136870" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.137046" 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-08-10T02:07:26.133586" 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-08-10T02:07:26.137225" 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-08-10T02:07:26.112413" elapsed="0.025285"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.145670" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.145373" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.160977" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.162037" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:26.162718" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.145824" elapsed="0.016957"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.163764" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.163135" elapsed="0.000730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.168508" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.164178" elapsed="0.005346"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.171374" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.169595" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.169576" elapsed="0.001869"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.198603" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.198651" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:26.171589" elapsed="0.027085"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.200511" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.198752" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.198734" elapsed="0.001858"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.200626" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.200819" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:26.200863" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:26.144985" elapsed="0.055900"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.203058" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.201473" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.201446" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.203700" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.203285" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.204233" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.203888" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.204308" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:07:26.204504" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:26.201099" elapsed="0.003430"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.204683" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:26.144372" elapsed="0.060755"/>
</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-08-10T02:07:26.094891" elapsed="0.110293"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:26.088077" elapsed="0.117220"/>
</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-08-10T02:07:26.216125" 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-08-10T02:07:26.216253" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.215989" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:26.216831" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe29d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:26.216449" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.217282" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:26.217008" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.217741" 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-08-10T02:07:26.217475" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.218184" 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-08-10T02:07:26.217914" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.218923" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.218372" elapsed="0.000582"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.219459" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.219106" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.220028" 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-08-10T02:07:26.219708" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.220562" 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-08-10T02:07:26.220219" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.221063" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.220753" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.221594" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.221255" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.222105" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe29d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.221788" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:26.215664" elapsed="0.006537"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.222745" 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-08-10T02:07:26.222363" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.223160" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:26.222922" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.231101" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.230802" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.238174" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.238385" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:26.238490" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.231255" elapsed="0.007261"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.238928" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.238680" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.241849" 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-08-10T02:07:26.239114" elapsed="0.002862"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.244522" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.242074" elapsed="0.002516"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.242048" elapsed="0.002573"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.248291" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.248352" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:26.244810" elapsed="0.003567"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.250128" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.248451" elapsed="0.001732"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.248432" elapsed="0.001774"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.250240" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.250448" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:26.250492" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:26.230491" 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-08-10T02:07:26.252658" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.251052" elapsed="0.001652"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.251035" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.253261" 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-08-10T02:07:26.252868" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.253812" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.253463" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.253887" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.254064" 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-08-10T02:07:26.250728" elapsed="0.003362"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.254244" 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-08-10T02:07:26.229921" elapsed="0.024786"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.262657" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.262356" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.277512" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.278567" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:26.279217" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.262813" elapsed="0.016465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.280259" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.279700" elapsed="0.000698"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.285935" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.280723" elapsed="0.007596"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.290402" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.288517" elapsed="0.001933"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.288473" elapsed="0.001999"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.317510" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.317557" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:26.290610" elapsed="0.026970"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.319504" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.317659" elapsed="0.001909"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.317640" elapsed="0.001956"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.319632" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.319828" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:26.319871" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:26.261967" elapsed="0.057926"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.322037" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.320467" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.320449" elapsed="0.001654"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.322669" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.322247" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.323202" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.322857" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.323276" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.323494" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:26.320111" 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-08-10T02:07:26.323696" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:26.261354" elapsed="0.062787"/>
</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-08-10T02:07:26.212399" elapsed="0.111798"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:26.205556" elapsed="0.118753"/>
</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-08-10T02:07:26.335111" 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-08-10T02:07:26.335243" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.334976" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:26.335889" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda31f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:26.335476" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.336361" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:26.336068" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.336803" 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-08-10T02:07:26.336539" elapsed="0.000289"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.337239" 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-08-10T02:07:26.336975" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.337989" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.337430" elapsed="0.000590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.338517" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.338173" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.339085" 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-08-10T02:07:26.338762" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.339649" 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-08-10T02:07:26.339276" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.340150" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.339841" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.340675" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.340360" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.341183" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda31f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.340868" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:26.334651" elapsed="0.006627"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.341828" 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-08-10T02:07:26.341443" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.342243" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:26.342007" 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-08-10T02:07:26.350257" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.349955" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.358030" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.358224" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:26.358331" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.350432" elapsed="0.007950"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.358792" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.358542" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.361652" 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-08-10T02:07:26.358979" elapsed="0.002873"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.365941" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.362009" elapsed="0.004041"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.361968" elapsed="0.004131"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.370358" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.370406" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:26.366443" elapsed="0.003987"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.372230" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.370504" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.370486" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.372360" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:26.372553" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:26.372597" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:26.349640" elapsed="0.022980"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.374748" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.373152" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.373135" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.375373" 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-08-10T02:07:26.374961" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.375937" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.375590" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.376013" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.376189" 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-08-10T02:07:26.372828" elapsed="0.003386"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.376386" 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-08-10T02:07:26.349069" elapsed="0.027762"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.384791" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.384494" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.400316" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.401452" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:26.402109" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.384947" elapsed="0.017222"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.403130" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.402566" elapsed="0.000665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.408775" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.403631" 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-08-10T02:07:26.411665" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.409892" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.409873" elapsed="0.001862"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.439832" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.439879" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:26.411873" elapsed="0.028029"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.441741" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.439981" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.439962" elapsed="0.001859"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.441855" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.442047" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:26.442091" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:26.384101" elapsed="0.058013"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.444278" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.442682" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.442664" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.444912" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.444511" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.445468" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.445101" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.445544" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.445725" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:26.442346" elapsed="0.003404"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.445905" 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-08-10T02:07:26.383456" elapsed="0.062911"/>
</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-08-10T02:07:26.331387" elapsed="0.115039"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:26.324583" elapsed="0.121957"/>
</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-08-10T02:07:26.457420" 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-08-10T02:07:26.457566" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.457269" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:26.458158" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ea20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:26.457746" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.458631" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:26.458353" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.459071" 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-08-10T02:07:26.458806" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.459529" 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-08-10T02:07:26.459244" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.460428" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.459717" elapsed="0.000741"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.460942" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.460613" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.461511" 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-08-10T02:07:26.461172" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.462027" 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-08-10T02:07:26.461704" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.462544" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.462218" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.463049" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.462737" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.463579" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ea20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.463243" 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-08-10T02:07:26.456944" elapsed="0.006764"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.464231" 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-08-10T02:07:26.463857" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.464663" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:26.464426" 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-08-10T02:07:26.472592" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.472275" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.478638" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.478897" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:26.479004" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.472748" elapsed="0.006281"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.479453" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.479186" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.482248" 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-08-10T02:07:26.479702" elapsed="0.002650"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.484913" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.482452" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.482426" elapsed="0.002585"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.489349" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.489398" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:26.485201" elapsed="0.004220"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.491202" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.489494" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.489476" elapsed="0.001804"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.491314" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:07:26.491524" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:26.491567" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:26.471960" elapsed="0.019630"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.493877" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.492139" elapsed="0.001784"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.492121" elapsed="0.001824"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.494503" 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-08-10T02:07:26.494090" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.495035" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.494690" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.495110" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.495286" 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-08-10T02:07:26.491812" elapsed="0.003499"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.495482" 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-08-10T02:07:26.471379" elapsed="0.024572"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.503727" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.503404" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.521649" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.522721" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:26.523411" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.503889" elapsed="0.019585"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.524455" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.523859" elapsed="0.000698"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.529606" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.524873" elapsed="0.006214"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.533672" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.531186" elapsed="0.002554"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.531160" elapsed="0.002610"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.608928" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.608991" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:26.533962" elapsed="0.075054"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.610983" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.609144" elapsed="0.001900"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.609113" elapsed="0.001958"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.611111" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:26.611345" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:26.611392" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:26.503015" elapsed="0.108400"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.613665" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.612070" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.612052" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.614359" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.613885" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.614899" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.614548" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.614975" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.615153" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:26.611677" 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-08-10T02:07:26.615350" 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-08-10T02:07:26.502404" elapsed="0.113448"/>
</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-08-10T02:07:26.453683" elapsed="0.162229"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:26.446854" elapsed="0.169187"/>
</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-08-10T02:07:26.626887" 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-08-10T02:07:26.627055" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.626744" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:26.627678" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d7b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:26.627233" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.628170" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:26.627885" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.628640" 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-08-10T02:07:26.628364" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.629083" 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-08-10T02:07:26.628814" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.630099" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.629258" elapsed="0.000872"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.630647" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.630286" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.631223" 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-08-10T02:07:26.630900" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.631770" 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-08-10T02:07:26.631437" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.632306" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.631994" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.632839" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.632521" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.633371" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d7b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.633034" 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-08-10T02:07:26.626415" elapsed="0.007056"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.633997" 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-08-10T02:07:26.633618" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.634434" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:26.634177" 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-08-10T02:07:26.645118" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.644812" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.652180" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.652478" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:26.652602" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.645274" elapsed="0.007359"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.653235" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.652887" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.656504" 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-08-10T02:07:26.653578" elapsed="0.003010"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.659105" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.656683" elapsed="0.002490"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.656657" elapsed="0.002547"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.662965" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.663012" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:26.659419" elapsed="0.003616"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.664982" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.663109" elapsed="0.001930"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.663091" elapsed="0.001972"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.665097" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.665291" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:26.665353" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:26.644491" elapsed="0.020887"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.667526" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.665924" elapsed="0.001648"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.665906" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.668169" 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-08-10T02:07:26.667739" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.668729" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.668376" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.668805" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.668983" 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-08-10T02:07:26.665591" elapsed="0.003417"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.669162" 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-08-10T02:07:26.643850" elapsed="0.025780"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.677421" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.677106" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.691682" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.692949" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:26.693634" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.677575" elapsed="0.016119"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.694650" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.694049" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.698923" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.695069" elapsed="0.005181"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.702847" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.700368" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.700322" elapsed="0.002623"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.729715" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.729762" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:26.703135" elapsed="0.026651"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.731589" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.729864" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.729845" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.731702" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.731893" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:26.731935" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:26.676731" elapsed="0.055239"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.734106" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.732528" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.732510" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.734732" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.734317" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.735269" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.734920" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.735362" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:26.735542" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:26.732182" elapsed="0.003386"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.735727" 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-08-10T02:07:26.676099" elapsed="0.060103"/>
</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-08-10T02:07:26.623134" elapsed="0.113124"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:26.616368" elapsed="0.120020"/>
</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-08-10T02:07:26.747163" 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-08-10T02:07:26.747307" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.747025" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:26.747918" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda13f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:26.747505" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.748407" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:26.748109" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.748851" 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-08-10T02:07:26.748583" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.749289" 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-08-10T02:07:26.749023" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.750326" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.749480" elapsed="0.000894"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.750863" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.750530" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.751438" 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-08-10T02:07:26.751094" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.751959" 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-08-10T02:07:26.751634" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.752513" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.752184" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.753022" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.752707" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.753548" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda13f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.753215" 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-08-10T02:07:26.746699" elapsed="0.006945"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.754166" 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-08-10T02:07:26.753790" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.754608" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:26.754363" 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-08-10T02:07:26.762366" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.762050" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.769700" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.770012" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:26.770161" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.762523" elapsed="0.007674"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.770799" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.770449" elapsed="0.000456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.774050" 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-08-10T02:07:26.771104" elapsed="0.003032"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.776698" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.774230" elapsed="0.002537"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.774205" elapsed="0.002593"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.781171" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.781217" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:26.776989" 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-08-10T02:07:26.783153" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.781314" elapsed="0.001894"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.781295" elapsed="0.001937"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.783267" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.783476" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:26.783520" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:26.761738" elapsed="0.021805"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.785672" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.784088" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.784071" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.786279" 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-08-10T02:07:26.785885" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.786831" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.786484" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.786906" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.787081" 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-08-10T02:07:26.783751" elapsed="0.003355"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.787258" 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-08-10T02:07:26.761169" elapsed="0.026550"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.795581" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.795263" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.811797" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.812893" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:26.813577" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.795736" elapsed="0.017902"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.814591" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.813989" elapsed="0.000704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.820303" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.815005" elapsed="0.006418"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.823218" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.821494" elapsed="0.001773"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.821475" elapsed="0.001815"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.854302" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.854365" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:26.823445" elapsed="0.030945"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.856183" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.854469" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.854450" elapsed="0.001813"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.856297" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.856509" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:26.856552" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:26.794889" elapsed="0.061685"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.858707" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.857118" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.857100" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.859315" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.858918" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.859886" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.859535" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.859962" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.860168" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:26.856789" elapsed="0.003405"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.860365" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:26.794266" elapsed="0.066545"/>
</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-08-10T02:07:26.743431" elapsed="0.117434"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:26.736565" elapsed="0.124411"/>
</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-08-10T02:07:26.871774" 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-08-10T02:07:26.871903" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.871638" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:26.872495" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeefc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:26.872080" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.872947" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:26.872672" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.873406" 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-08-10T02:07:26.873120" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.873843" 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-08-10T02:07:26.873578" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.874561" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.874015" elapsed="0.000577"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.875074" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.874749" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.875642" 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-08-10T02:07:26.875304" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.876357" 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-08-10T02:07:26.875834" elapsed="0.000567"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.876876" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.876555" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.877408" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:26.877072" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.877926" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeefc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:26.877604" 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-08-10T02:07:26.871298" elapsed="0.006724"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.878564" 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-08-10T02:07:26.878169" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.878980" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:26.878742" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.889583" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.889263" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.897849" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.898038" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:26.898142" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.889741" elapsed="0.008427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.898607" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.898327" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.901261" 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-08-10T02:07:26.898795" elapsed="0.002629"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.905641" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.901676" elapsed="0.004076"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.901632" elapsed="0.004170"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.910190" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.910236" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:26.906110" elapsed="0.004149"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.912026" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.910349" elapsed="0.001732"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.910314" elapsed="0.001791"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.912140" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:07:26.912368" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:26.912413" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:26.888948" elapsed="0.023488"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.914566" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.912976" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.912959" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.915177" 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-08-10T02:07:26.914780" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.915736" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.915381" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.915812" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.915989" 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-08-10T02:07:26.912647" elapsed="0.003368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.916170" 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-08-10T02:07:26.888383" elapsed="0.028305"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.924673" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:26.924370" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:26.939949" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:26.941033" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:26.941724" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:26.924831" elapsed="0.016954"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.942758" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.942144" elapsed="0.000716"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.948532" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:26.943181" elapsed="0.006426"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.951429" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.949679" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.949660" elapsed="0.001841"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:26.980876" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:26.980923" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:26.951641" elapsed="0.029305"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:26.982751" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:26.981026" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.981007" elapsed="0.001825"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:26.982866" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:26.983062" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:26.983106" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:26.923954" elapsed="0.059174"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:26.985274" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:26.983694" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:26.983676" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.985903" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.985506" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:26.986459" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:26.986090" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:26.986534" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:26.986713" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:26.983361" elapsed="0.003377"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:26.986894" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:26.923310" elapsed="0.064048"/>
</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-08-10T02:07:26.868008" elapsed="0.119410"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:26.861219" elapsed="0.126316"/>
</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-08-10T02:07:26.998516" 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-08-10T02:07:26.998661" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:26.998377" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:26.999252" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:26.998839" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:26.999726" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:26.999449" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.000164" 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-08-10T02:07:26.999900" elapsed="0.000289"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.000636" 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-08-10T02:07:27.000369" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.001554" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:27.000808" elapsed="0.000777"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.002070" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.001745" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.002653" 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-08-10T02:07:27.002304" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.003170" 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-08-10T02:07:27.002846" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.003692" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:27.003380" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.004199" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:27.003886" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.006789" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.004442" elapsed="0.002392"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:26.998030" elapsed="0.008862"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.007450" 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-08-10T02:07:27.007043" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.007872" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:27.007633" 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-08-10T02:07:27.015616" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.015299" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.023521" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.023845" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:27.024008" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.015771" elapsed="0.008272"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.024698" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.024305" elapsed="0.000456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.027843" 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-08-10T02:07:27.024959" elapsed="0.002969"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.030501" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.028023" elapsed="0.002548"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.027997" elapsed="0.002605"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.034560" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.034605" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:27.030794" elapsed="0.003834"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.036409" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.034703" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.034685" elapsed="0.001808"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.036527" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.036720" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:27.036763" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:27.014989" elapsed="0.021797"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.039080" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.037325" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.037308" elapsed="0.001839"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.039715" 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-08-10T02:07:27.039291" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.040243" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.039899" elapsed="0.000369"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.040317" elapsed="0.000071"/>
</return>
<msg time="2026-08-10T02:07:27.040542" 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-08-10T02:07:27.036995" elapsed="0.003572"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.040718" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:27.014439" elapsed="0.026720"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.048917" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.048619" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.063882" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.064966" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:27.065655" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.049072" elapsed="0.016644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.066667" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.066067" elapsed="0.000701"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.071292" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.067082" elapsed="0.005569"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.075209" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.072751" elapsed="0.002525"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.072724" elapsed="0.002583"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.105052" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.105099" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:27.075520" elapsed="0.029602"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.106906" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.105201" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.105182" elapsed="0.001804"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.107019" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.107213" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:27.107257" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:27.048202" elapsed="0.059078"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.109464" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.107846" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.107828" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.110074" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.109677" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.110629" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.110260" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.110704" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.110880" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:27.107512" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.111059" 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-08-10T02:07:27.047591" elapsed="0.063926"/>
</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-08-10T02:07:26.994650" elapsed="0.116924"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:26.987790" elapsed="0.123898"/>
</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-08-10T02:07:27.122478" 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-08-10T02:07:27.122610" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:27.122323" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:27.123177" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bba0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:27.122787" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.123647" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:27.123371" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.124087" 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-08-10T02:07:27.123822" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.124594" 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-08-10T02:07:27.124259" elapsed="0.000362"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.125409" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:27.124769" elapsed="0.000670"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.125920" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.125593" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.126488" 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-08-10T02:07:27.126150" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.127007" 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-08-10T02:07:27.126685" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.127525" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.127197" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.128033" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.127719" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.131362" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bba0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.128226" elapsed="0.003181"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:27.121997" elapsed="0.009466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.132013" 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-08-10T02:07:27.131632" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.132475" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:27.132192" 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-08-10T02:07:27.140357" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.140044" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.148086" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.148280" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:27.148409" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.140556" elapsed="0.007879"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.148873" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.148622" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.153057" 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-08-10T02:07:27.149057" elapsed="0.004196"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.157502" elapsed="0.000035"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.153448" elapsed="0.004176"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.153405" elapsed="0.004276"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.160629" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.160674" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:27.157873" 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-08-10T02:07:27.162466" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.160770" elapsed="0.001751"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.160752" elapsed="0.001793"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.162578" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.162769" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:27.162813" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:27.139730" elapsed="0.023106"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.164984" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.163387" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.163369" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.165607" 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-08-10T02:07:27.165196" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.166140" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.165793" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.166215" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.166409" 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-08-10T02:07:27.163044" elapsed="0.003391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.166591" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:27.139155" elapsed="0.027879"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.176871" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.176572" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.192359" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.193025" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:27.193476" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.177026" elapsed="0.016489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.194086" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.193738" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.197623" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.194367" elapsed="0.004567"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.201487" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.199033" elapsed="0.002523"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.199007" elapsed="0.002579"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.229681" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.229727" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:27.201778" elapsed="0.027972"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.231536" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.229829" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.229810" elapsed="0.001805"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.231649" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.231841" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:27.231886" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:27.176167" elapsed="0.055741"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.234091" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.232498" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.232470" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.234720" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.234304" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.235257" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.234909" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.235349" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:27.235532" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:27.232122" elapsed="0.003436"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.235713" 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-08-10T02:07:27.175548" elapsed="0.060615"/>
</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-08-10T02:07:27.118756" elapsed="0.117464"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:27.111936" elapsed="0.124413"/>
</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-08-10T02:07:27.247200" 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-08-10T02:07:27.247329" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:27.247064" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:27.247915" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec7c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:27.247525" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.248384" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:27.248092" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.248843" 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-08-10T02:07:27.248561" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.249287" 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-08-10T02:07:27.249021" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.250067" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:27.249480" elapsed="0.000617"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.250596" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.250251" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.251150" 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-08-10T02:07:27.250829" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.251706" 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-08-10T02:07:27.251363" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.252209" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.251897" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.252783" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.252420" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.253306" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec7c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.252983" 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-08-10T02:07:27.246737" elapsed="0.006685"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.253947" 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-08-10T02:07:27.253571" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.254380" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-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-08-10T02:07:27.254126" 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-08-10T02:07:27.262283" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.261984" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.270308" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.270522" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:27.270651" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.262459" elapsed="0.008236"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.271290" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.270941" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.274435" 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-08-10T02:07:27.271579" elapsed="0.002981"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.277101" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.274659" elapsed="0.002510"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.274633" elapsed="0.002566"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.281265" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.281328" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:27.277415" elapsed="0.003969"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.283260" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.281489" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.281463" elapsed="0.001892"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.283391" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.283584" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:27.283628" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:27.261670" elapsed="0.021981"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.285807" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.284195" elapsed="0.001657"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.284178" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.286430" 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-08-10T02:07:27.286018" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.286962" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.286617" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.287037" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.287213" 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-08-10T02:07:27.283868" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.287409" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:27.261100" elapsed="0.026753"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.295808" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.295511" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.309181" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.310272" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:27.310956" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.295963" elapsed="0.015054"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.311972" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.311409" elapsed="0.000663"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.317764" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.312427" elapsed="0.006294"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.320542" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.318793" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.318774" elapsed="0.001839"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.352247" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.352294" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:27.320764" elapsed="0.031554"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.354110" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.352415" elapsed="0.001751"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.352395" elapsed="0.001794"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.354223" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:07:27.354433" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:27.354478" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:27.295119" elapsed="0.059381"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.356635" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.355041" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.355024" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.357269" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.356872" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.357825" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.357475" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.357900" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.358076" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:27.354714" elapsed="0.003387"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.358254" 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-08-10T02:07:27.294503" elapsed="0.064217"/>
</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-08-10T02:07:27.243484" elapsed="0.115293"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:27.236670" elapsed="0.122220"/>
</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-08-10T02:07:27.380666" 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-08-10T02:07:27.380868" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:27.380527" elapsed="0.000389"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:27.381748" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368ef0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:27.381076" elapsed="0.000701"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.382210" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:27.381930" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.382670" 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-08-10T02:07:27.382403" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.383108" 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-08-10T02:07:27.382843" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.383917" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:27.383281" elapsed="0.000666"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.384446" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.384100" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.385055" 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-08-10T02:07:27.384686" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.385593" 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-08-10T02:07:27.385250" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.386093" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:27.385784" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.386620" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:27.386285" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.387132" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368ef0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.386814" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:27.380164" elapsed="0.007065"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.387779" 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-08-10T02:07:27.387393" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.388195" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;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-08-10T02:07:27.387958" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.396124" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.395824" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.403531" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.403748" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:27.403855" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.396280" elapsed="0.007601"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.404289" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.404040" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.407035" 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-08-10T02:07:27.404497" elapsed="0.002668"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.409799" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.407264" elapsed="0.002607"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.407237" elapsed="0.002667"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.414016" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.414062" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:27.410099" elapsed="0.003987"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.415979" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.414243" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.414223" elapsed="0.001837"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.416094" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:27.416293" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:27.416353" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:27.395511" elapsed="0.020868"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.418558" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.416943" elapsed="0.001661"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.416925" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.419164" 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-08-10T02:07:27.418769" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.419718" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.419368" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.419796" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.419973" 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-08-10T02:07:27.416592" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.420154" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:27.394936" elapsed="0.025692"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.428736" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.428437" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.442746" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.443821" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:27.444502" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.428938" elapsed="0.015624"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.445641" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.444961" elapsed="0.000784"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.450737" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.446062" elapsed="0.005993"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.454627" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.452155" elapsed="0.002541"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.452129" elapsed="0.002597"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.486825" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.486872" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:27.454920" elapsed="0.031975"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.488691" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.486973" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.486954" elapsed="0.001817"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.488804" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.489031" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:27.489074" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:27.428046" elapsed="0.061050"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.491233" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.489662" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.489644" elapsed="0.001656"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.491856" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.491459" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.492412" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.492044" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.492487" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.492664" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:27.489313" elapsed="0.003375"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.492844" 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-08-10T02:07:27.427420" elapsed="0.065903"/>
</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-08-10T02:07:27.365997" elapsed="0.127404"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:27.359124" elapsed="0.134397"/>
</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-08-10T02:07:27.504362" 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-08-10T02:07:27.504493" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:27.504210" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:27.505103" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9d3a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:27.504671" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.505579" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:27.505281" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.506026" 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-08-10T02:07:27.505760" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.506484" 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-08-10T02:07:27.506201" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.507317" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:27.506659" elapsed="0.000704"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.507841" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.507517" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.508416" 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-08-10T02:07:27.508075" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.508960" 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-08-10T02:07:27.508609" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.509488" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.509160" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.509996" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.509682" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.510519" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9d3a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.510188" 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-08-10T02:07:27.503884" elapsed="0.006731"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.511138" 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-08-10T02:07:27.510761" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.511571" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:27.511315" 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-08-10T02:07:27.519531" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.519132" elapsed="0.000429"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.526381" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.526591" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:27.526698" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.519695" elapsed="0.007028"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.527130" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.526881" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.529406" 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-08-10T02:07:27.527316" elapsed="0.002183"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.532035" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.529575" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.529552" elapsed="0.002580"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.536281" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.536366" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:27.532325" elapsed="0.004075"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.538603" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.536504" elapsed="0.002154"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.536478" elapsed="0.002204"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.538716" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.538907" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:27.538950" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:27.518819" elapsed="0.020153"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.541126" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.539524" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.539507" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.541747" 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-08-10T02:07:27.541352" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.542279" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.541934" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.542371" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:27.542550" 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-08-10T02:07:27.539180" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.542734" elapsed="0.000378"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:27.518252" elapsed="0.024922"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.551117" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.550821" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.565929" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.566987" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:27.567663" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.551271" elapsed="0.016453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.568680" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.568081" elapsed="0.000698"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.574077" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.569118" elapsed="0.005911"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.576845" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.575100" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.575081" elapsed="0.001833"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.607690" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.607737" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:27.577064" elapsed="0.030697"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.609564" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.607839" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.607820" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.609677" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:07:27.609868" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:27.609911" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:27.550448" elapsed="0.059485"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.612069" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.610495" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.610477" elapsed="0.001659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.612693" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.612280" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.613254" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.612879" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.613350" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:27.613530" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:27.610148" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.613709" elapsed="0.000379"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:27.549819" elapsed="0.064331"/>
</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-08-10T02:07:27.500641" elapsed="0.113566"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:27.493808" elapsed="0.120509"/>
</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-08-10T02:07:27.625233" 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-08-10T02:07:27.625383" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:27.625093" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:27.625946" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7b50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:27.625562" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.626417" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:27.626124" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.626856" 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-08-10T02:07:27.626591" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.627292" 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-08-10T02:07:27.627028" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.628083" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:27.627482" elapsed="0.000631"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.628610" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.628264" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.629188" 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-08-10T02:07:27.628838" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.629727" 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-08-10T02:07:27.629402" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.630226" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:27.629917" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.630750" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:27.630436" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.631258" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7b50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.630943" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:27.624600" elapsed="0.006775"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.631898" 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-08-10T02:07:27.631523" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.632309" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:27.632074" 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-08-10T02:07:27.640224" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.639927" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.646913" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.647105" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:27.647209" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.640396" elapsed="0.006838"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.647672" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.647415" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.650804" 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-08-10T02:07:27.647962" elapsed="0.002963"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.653494" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.651022" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.650995" elapsed="0.002598"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.657549" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.657613" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:27.653784" elapsed="0.003865"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.659492" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.657773" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.657742" elapsed="0.001828"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.659604" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.659793" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:27.659837" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:27.639614" elapsed="0.020245"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.661993" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.660411" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.660394" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.662614" 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-08-10T02:07:27.662202" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.663147" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.662804" elapsed="0.000368"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.663221" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.663415" 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-08-10T02:07:27.660067" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.663594" elapsed="0.000377"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:27.639041" elapsed="0.024991"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.671960" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.671666" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.685695" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.686746" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:27.687430" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.672115" elapsed="0.015378"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.688439" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.687847" elapsed="0.000693"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.694075" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.688857" elapsed="0.006174"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.696842" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.695102" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.695083" elapsed="0.001829"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.722842" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.722889" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:27.697048" elapsed="0.025864"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.724700" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.722990" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.722972" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.724813" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.725006" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:27.725049" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:27.671274" elapsed="0.053798"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.727236" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.725666" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.725649" elapsed="0.001653"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.727858" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.727462" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.728414" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.728047" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.728489" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.728670" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:27.725313" elapsed="0.003383"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.728850" 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-08-10T02:07:27.670661" elapsed="0.058646"/>
</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-08-10T02:07:27.621372" elapsed="0.108010"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:27.614570" elapsed="0.114924"/>
</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-08-10T02:07:27.740566" 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-08-10T02:07:27.740695" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:27.740430" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:27.741312" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe16e80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:27.740872" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.741795" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:27.741518" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.742235" 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-08-10T02:07:27.741969" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.742690" 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-08-10T02:07:27.742423" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.743574" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:27.742861" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.744080" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.743757" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.744650" 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-08-10T02:07:27.744308" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.745170" 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-08-10T02:07:27.744848" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.745701" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:27.745390" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.746206" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:27.745893" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.746730" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe16e80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.746416" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:27.740089" elapsed="0.006735"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.747361" 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-08-10T02:07:27.746970" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.747941" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:27.747540" elapsed="0.000464"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.755636" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.755321" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.762199" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.762448" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:27.762558" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.755791" elapsed="0.006792"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.763026" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.762775" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.765322" 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-08-10T02:07:27.763211" 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-08-10T02:07:27.767945" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.765478" elapsed="0.002534"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.765460" elapsed="0.002582"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.772644" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.772707" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:27.768232" elapsed="0.004508"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.774786" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.772841" elapsed="0.002000"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.772816" elapsed="0.002048"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.774897" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.775089" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:27.775132" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:27.755009" elapsed="0.020145"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.777452" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.775705" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.775688" elapsed="0.001831"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.778058" 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-08-10T02:07:27.777664" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.778613" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.778244" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.778687" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.778863" 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-08-10T02:07:27.775379" 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-08-10T02:07:27.779040" 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-08-10T02:07:27.754460" elapsed="0.025040"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.787230" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.786936" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.802004" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.803074" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:27.803756" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.787402" elapsed="0.016414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.804769" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.804166" elapsed="0.000703"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.810104" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.805184" elapsed="0.005875"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.812876" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.811130" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.811111" elapsed="0.001836"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.843327" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.843390" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:27.813083" elapsed="0.030330"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.845180" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.843492" elapsed="0.001743"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.843473" elapsed="0.001787"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.845294" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.845533" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:27.845577" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:27.786563" elapsed="0.059037"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.847731" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.846143" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.846125" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.848358" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.847944" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.848895" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.848548" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.848970" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.849146" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:27.845815" elapsed="0.003356"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.849325" 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-08-10T02:07:27.785939" elapsed="0.063875"/>
</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-08-10T02:07:27.736815" elapsed="0.113056"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:27.729971" elapsed="0.120011"/>
</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-08-10T02:07:27.860758" 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-08-10T02:07:27.860889" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:27.860624" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:27.861527" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2d40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:27.861067" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.861983" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:27.861706" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.862442" 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-08-10T02:07:27.862156" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.862879" 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-08-10T02:07:27.862614" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.863795" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:27.863051" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.864302" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.863978" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.865031" 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-08-10T02:07:27.864556" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.865600" 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-08-10T02:07:27.865227" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.866107" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:27.865795" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.866643" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:27.866302" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.867154" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2d40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.866837" 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-08-10T02:07:27.860284" elapsed="0.006965"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.867795" 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-08-10T02:07:27.867415" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.868210" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:27.867973" 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-08-10T02:07:27.875903" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.875607" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.883560" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.883903" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:27.884056" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.876057" elapsed="0.008034"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.884742" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.884387" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.887912" 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-08-10T02:07:27.885005" elapsed="0.002993"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.890545" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.888093" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.888068" elapsed="0.002576"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.895125" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.895171" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:27.890836" elapsed="0.004358"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.897089" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.895267" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.895249" elapsed="0.001919"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.897202" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:27.897421" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:27.897466" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:27.875277" elapsed="0.022212"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.899603" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.898022" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.898005" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.900210" 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-08-10T02:07:27.899818" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.900759" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.900412" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.900834" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.901010" 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-08-10T02:07:27.897698" elapsed="0.003337"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:27.901188" elapsed="0.003456"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:27.874734" elapsed="0.029988"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.912541" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:27.912215" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:27.927419" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:27.928063" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:27.928488" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:27.912698" elapsed="0.015828"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.929095" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.928746" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.932611" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:27.929378" elapsed="0.004601"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.936533" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.934079" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.934052" elapsed="0.002579"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.968304" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:27.968367" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:27.936822" elapsed="0.031570"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:27.970177" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:27.968472" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.968453" elapsed="0.001804"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:27.970290" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.970502" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:27.970545" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:27.911841" elapsed="0.058726"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:27.972699" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:27.971110" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:27.971092" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.973308" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.972910" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.973913" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:27.973552" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:27.973989" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:27.974166" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:27.970781" 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-08-10T02:07:27.974367" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:27.911211" elapsed="0.063603"/>
</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-08-10T02:07:27.857018" elapsed="0.117852"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:27.850218" elapsed="0.124766"/>
</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-08-10T02:07:27.985852" 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-08-10T02:07:27.985985" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:27.985715" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:27.986606" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff323e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:27.986164" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.987062" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:27.986787" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.987531" 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-08-10T02:07:27.987237" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:27.987976" 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-08-10T02:07:27.987710" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:27.989028" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:27.988148" elapsed="0.000911"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.989609" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.989216" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.990168" 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-08-10T02:07:27.989847" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.990705" 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-08-10T02:07:27.990379" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.991207" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:27.990896" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.991735" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:27.991419" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.992245" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff323e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:27.991930" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:27.985369" elapsed="0.006989"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.992886" 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-08-10T02:07:27.992509" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:27.993300" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:27.993064" 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-08-10T02:07:28.001028" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.000731" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.007377" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.007622" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:28.007785" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.001183" elapsed="0.006646"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.008486" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.008103" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.011660" 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-08-10T02:07:28.008747" elapsed="0.003001"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.014278" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.011843" elapsed="0.002524"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.011817" elapsed="0.002582"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.018911" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.018957" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:28.014592" elapsed="0.004387"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.020888" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.019053" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.019035" elapsed="0.001932"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.021001" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.021192" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:28.021236" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:28.000419" elapsed="0.020839"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.023427" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.021840" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.021822" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.024028" 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-08-10T02:07:28.023637" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.024579" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.024213" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.024654" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:28.024828" 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-08-10T02:07:28.021484" elapsed="0.003369"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.025006" 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-08-10T02:07:27.999855" elapsed="0.025610"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.033195" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.032902" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.046609" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.047668" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:28.048288" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.033367" elapsed="0.015015"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.049297" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.048738" elapsed="0.000701"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.054932" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;639000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;710000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;358000000&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;876000000&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;393000000&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;910000000&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;433000000&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;957000000&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;475000000&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;8&lt;/second&gt;&lt;nanosecond&gt;6000000&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;55000000&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;974000000&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;280000000&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;6&lt;/second&gt;&lt;nanosecond&gt;90000000&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;323000000&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;114000000&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;364000000&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;114000000&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;395000000&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;429000000&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;472000000&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;516000000&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;203000000&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;553000000&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;586000000&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;582000000&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;629000000&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;121000000&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;666000000&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;826000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;744000000&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;782000000&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;820000000&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;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;856000000&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;942000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;164000000&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;894000000&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;977000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;206000000&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;934000000&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;6&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;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;243000000&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;6&lt;/second&gt;&lt;nanosecond&gt;59000000&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;7&lt;/second&gt;&lt;nanosecond&gt;10000000&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;40000000&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;67000000&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;543000000&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;515000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.049781" elapsed="0.006096"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.057704" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.055948" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.055929" elapsed="0.001846"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.136685" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.136749" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:28.057917" elapsed="0.078858"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.141944" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.136903" elapsed="0.005110"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.136871" elapsed="0.005173"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.142085" elapsed="0.000048"/>
</return>
<msg time="2026-08-10T02:07:28.142349" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:28.142397" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:28.032531" elapsed="0.109890"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.144656" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.143072" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.143054" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.145382" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.144880" elapsed="0.000530"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.145940" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.145571" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.146015" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.146287" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:28.142699" 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-08-10T02:07:28.146491" 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-08-10T02:07:28.031911" elapsed="0.115050"/>
</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-08-10T02:07:27.982101" elapsed="0.164917"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:27.975267" elapsed="0.171881"/>
</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-08-10T02:07:28.158239" 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-08-10T02:07:28.158423" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.158093" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:28.159037" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe14360&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:28.158603" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.159515" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:28.159216" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.159959" 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-08-10T02:07:28.159691" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.160415" 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-08-10T02:07:28.160131" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.161327" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.160589" elapsed="0.000785"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.161882" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.161531" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.162480" 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-08-10T02:07:28.162142" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.162992" 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-08-10T02:07:28.162671" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.163506" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.163180" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.164010" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.163698" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.164533" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe14360&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.164203" 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-08-10T02:07:28.157720" elapsed="0.006909"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.165152" 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-08-10T02:07:28.164776" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.165587" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:28.165331" 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-08-10T02:07:28.173275" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.172971" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.180279" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.180582" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:28.180693" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.173449" elapsed="0.007270"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.181166" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.180915" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.184047" 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-08-10T02:07:28.181370" elapsed="0.002764"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.186710" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.184231" elapsed="0.002547"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.184205" elapsed="0.002603"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.191280" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.191325" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:28.186999" elapsed="0.004367"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.193126" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.191440" elapsed="0.001742"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.191422" elapsed="0.001784"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.193239" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.193448" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:28.193491" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:28.172659" elapsed="0.020854"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.195641" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.194062" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.194044" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.196249" 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-08-10T02:07:28.195857" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.196799" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.196453" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.196874" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.197049" 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-08-10T02:07:28.193723" elapsed="0.003351"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.197228" 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-08-10T02:07:28.172094" elapsed="0.025598"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.205448" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.205129" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.222048" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.223112" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:28.223773" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.205603" elapsed="0.018230"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.224790" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.224184" elapsed="0.000706"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.230838" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.225205" elapsed="0.006590"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.233613" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.231867" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.231848" elapsed="0.001835"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.262881" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.262929" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:28.233843" elapsed="0.029109"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.264752" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.263031" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.263012" elapsed="0.001821"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.264866" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.265057" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:28.265100" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:28.204756" elapsed="0.060367"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.267283" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.265683" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.265665" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.267915" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.267513" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.268471" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.268103" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.268546" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.268722" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:28.265354" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.268902" 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-08-10T02:07:28.204128" elapsed="0.065239"/>
</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-08-10T02:07:28.154372" elapsed="0.115054"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:28.147514" elapsed="0.122024"/>
</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-08-10T02:07:28.280315" 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-08-10T02:07:28.280464" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.280178" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:28.281060" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6610&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:28.280643" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.281530" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:28.281235" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.281995" 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-08-10T02:07:28.281703" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.282456" 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-08-10T02:07:28.282169" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.283359" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.282635" elapsed="0.000756"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.283869" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.283545" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.284436" 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-08-10T02:07:28.284099" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.284955" 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-08-10T02:07:28.284627" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.285472" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.285146" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.286007" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.285665" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.286538" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6610&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.286203" 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-08-10T02:07:28.279851" elapsed="0.006783"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.287154" 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-08-10T02:07:28.286777" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.287589" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:28.287348" 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-08-10T02:07:28.295464" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.295148" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.302600" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.302945" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:28.303097" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.295620" elapsed="0.007513"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.303784" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.303430" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.306939" 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-08-10T02:07:28.304043" elapsed="0.002982"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.309591" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.307121" elapsed="0.002538"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.307095" elapsed="0.002594"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.313316" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.313381" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:28.309878" 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-08-10T02:07:28.315189" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.313479" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.313460" elapsed="0.001808"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.315301" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:07:28.315512" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:28.315555" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:28.294835" elapsed="0.020743"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.317843" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.316116" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.316099" elapsed="0.001812"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.318496" 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-08-10T02:07:28.318083" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.319025" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.318681" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.319100" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:28.319274" 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-08-10T02:07:28.315791" 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-08-10T02:07:28.319471" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:28.294267" elapsed="0.025648"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.327664" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.327367" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.341790" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.342888" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:28.343580" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.327818" elapsed="0.015823"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.344604" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.343992" elapsed="0.000715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.350320" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.345021" elapsed="0.006538"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.353376" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.351630" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.351611" elapsed="0.001835"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.385541" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.385591" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:28.353583" elapsed="0.032034"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.387452" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.385706" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.385686" elapsed="0.001848"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.387570" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.387770" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:28.387815" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:28.326980" elapsed="0.060858"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.389973" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.388403" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.388384" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.390637" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.390216" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.391173" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.390823" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.391247" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:28.391443" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:28.388057" elapsed="0.003412"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.391623" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:28.326375" elapsed="0.065696"/>
</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-08-10T02:07:28.276597" elapsed="0.115529"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:28.269782" elapsed="0.122466"/>
</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-08-10T02:07:28.403110" 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-08-10T02:07:28.403243" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.402975" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:28.403856" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f3d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:28.403438" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.404307" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:28.404031" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.404770" 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-08-10T02:07:28.404504" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.405205" 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-08-10T02:07:28.404942" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.406127" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.405393" elapsed="0.000765"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.406660" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.406312" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.407226" 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-08-10T02:07:28.406906" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.407912" 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-08-10T02:07:28.407435" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.408439" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.408107" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.408956" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.408636" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.409485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f3d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.409150" 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-08-10T02:07:28.402650" elapsed="0.006932"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.410143" 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-08-10T02:07:28.409736" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.410585" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:28.410324" 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-08-10T02:07:28.418288" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.417969" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.426527" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.426877" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:28.427027" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.418462" elapsed="0.008600"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.427701" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.427324" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.430895" 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-08-10T02:07:28.427963" elapsed="0.003019"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.433518" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.431077" elapsed="0.002510"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.431051" elapsed="0.002566"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.438256" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.438323" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:28.433809" 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-08-10T02:07:28.440295" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.438485" elapsed="0.001883"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.438459" elapsed="0.001934"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.440428" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:28.440620" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:28.440665" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:28.417658" elapsed="0.023030"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.443009" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.441223" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.441206" elapsed="0.001872"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.443638" 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-08-10T02:07:28.443225" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.444172" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.443826" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.444247" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.444442" 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-08-10T02:07:28.440896" elapsed="0.003571"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.444622" 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-08-10T02:07:28.417094" elapsed="0.027977"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.452839" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.452543" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.468522" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.469575" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:28.470276" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.452993" elapsed="0.017700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.471703" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.471083" elapsed="0.000723"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.475994" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.472123" elapsed="0.004820"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.478762" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.477015" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.476996" elapsed="0.001837"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.506759" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.506806" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:28.478971" elapsed="0.027858"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.508635" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.506908" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.506889" elapsed="0.001825"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.508749" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:28.508944" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:28.508987" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:28.452153" elapsed="0.056857"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.511163" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.509573" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.509555" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.511797" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.511392" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.512348" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.511984" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.512425" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.512602" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:28.509225" elapsed="0.003402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.512782" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:28.451540" elapsed="0.061688"/>
</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-08-10T02:07:28.399389" elapsed="0.113895"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:28.392513" elapsed="0.120902"/>
</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-08-10T02:07:28.524272" 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-08-10T02:07:28.524421" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.524137" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:28.525026" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:28.524601" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.525502" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:28.525205" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.525945" 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-08-10T02:07:28.525678" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.526423" 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-08-10T02:07:28.526120" elapsed="0.000330"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.527377" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.526598" elapsed="0.000810"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.529903" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.527561" elapsed="0.002386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.530520" 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-08-10T02:07:28.530141" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.531039" 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-08-10T02:07:28.530714" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.531560" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.531230" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.532070" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.531754" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.532608" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.532264" 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-08-10T02:07:28.523807" elapsed="0.008898"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.533229" 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-08-10T02:07:28.532852" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.533666" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:28.533425" 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-08-10T02:07:28.541451" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.541134" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.549243" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.549503" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:28.549628" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.541606" elapsed="0.008087"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.550317" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.549948" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.553513" 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-08-10T02:07:28.550604" elapsed="0.002996"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.556160" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.553695" elapsed="0.002535"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.553669" elapsed="0.002591"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.560294" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.560356" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:28.556475" elapsed="0.003905"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.562136" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.560455" elapsed="0.001736"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.560436" elapsed="0.001779"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.562263" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.562472" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:28.562591" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:28.540824" elapsed="0.021793"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.564917" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.563160" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.563143" elapsed="0.001842"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.565543" 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-08-10T02:07:28.565129" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.566075" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.565730" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.566149" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.566372" 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-08-10T02:07:28.562831" elapsed="0.003567"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.566558" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:28.540258" elapsed="0.026743"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.574809" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.574512" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.589576" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.590601" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:28.591273" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.574963" elapsed="0.016402"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.592290" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.591728" elapsed="0.000699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.597961" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.592746" 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-08-10T02:07:28.601366" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.599616" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.599597" elapsed="0.001841"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.632109" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.632157" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:28.601577" elapsed="0.030603"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.633974" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.632265" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.632246" elapsed="0.001808"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.634088" elapsed="0.000036"/>
</return>
<msg time="2026-08-10T02:07:28.634293" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:28.634375" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:28.574090" elapsed="0.060312"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.636549" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.634960" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.634942" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.637164" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.636765" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.637720" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.637369" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.637795" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:28.637971" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:28.634628" elapsed="0.003369"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.638152" 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-08-10T02:07:28.573474" elapsed="0.065168"/>
</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-08-10T02:07:28.520521" elapsed="0.118180"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:28.513665" elapsed="0.125148"/>
</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-08-10T02:07:28.649611" 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-08-10T02:07:28.649741" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.649477" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:28.650374" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:28.649919" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.650849" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:28.650560" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.651291" 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-08-10T02:07:28.651025" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.651757" 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-08-10T02:07:28.651488" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.652707" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.651929" elapsed="0.000808"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.653214" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.652890" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.653802" 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-08-10T02:07:28.653480" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.654318" 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-08-10T02:07:28.653994" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.654871" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.654557" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.655396" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.655064" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.655908" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.655591" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:28.649134" elapsed="0.006871"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.656550" 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-08-10T02:07:28.656152" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.657139" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:28.656730" elapsed="0.000475"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.664867" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.664568" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.671674" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.672037" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:28.672190" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.665022" elapsed="0.007244"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.672873" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.672521" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.676080" 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-08-10T02:07:28.673135" elapsed="0.003033"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.678724" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.676263" elapsed="0.002529"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.676238" elapsed="0.002585"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.683352" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.683400" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:28.679015" elapsed="0.004409"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.685196" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.683499" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.683480" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.685310" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:07:28.685520" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:28.685564" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:28.664237" elapsed="0.021349"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.689719" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.686124" elapsed="0.003641"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.686107" elapsed="0.003680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.690344" 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-08-10T02:07:28.689932" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.690913" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.690562" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.690989" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:28.691167" 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-08-10T02:07:28.685797" elapsed="0.005395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.691362" 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-08-10T02:07:28.663685" elapsed="0.028124"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.699694" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.699392" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.713550" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.714646" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:28.715312" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.699847" elapsed="0.015562"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.716320" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.715767" elapsed="0.000691"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.721983" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.716774" 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-08-10T02:07:28.725279" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.723529" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.723510" elapsed="0.001856"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.752523" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.752570" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:28.725506" elapsed="0.027087"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.754379" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.752672" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.752653" elapsed="0.001831"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.754520" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.754718" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:28.754762" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:28.698997" elapsed="0.055787"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.756916" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.755345" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.755311" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.757540" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.757126" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.758078" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.757729" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.758153" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:28.758345" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:28.755000" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.758541" 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-08-10T02:07:28.698327" elapsed="0.060663"/>
</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-08-10T02:07:28.645871" elapsed="0.113176"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:28.639065" elapsed="0.120092"/>
</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-08-10T02:07:28.770000" 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-08-10T02:07:28.770140" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.769865" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:28.770800" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f100&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:28.770320" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.771256" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:28.770979" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.771719" 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-08-10T02:07:28.771451" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.772157" 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-08-10T02:07:28.771893" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.773098" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.772345" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.773626" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.773282" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.774187" 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-08-10T02:07:28.773866" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.774744" 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-08-10T02:07:28.774398" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.775247" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.774937" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.775783" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.775461" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.776471" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f100&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.775979" 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-08-10T02:07:28.769539" elapsed="0.007034"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.777105" 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-08-10T02:07:28.776722" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.777544" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:28.777286" 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-08-10T02:07:28.785383" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.785071" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.792607" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.792845" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:28.792955" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.785541" elapsed="0.007470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.793440" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.793172" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.795834" 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-08-10T02:07:28.793629" elapsed="0.002302"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.798476" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.796027" elapsed="0.002534"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.796001" elapsed="0.002590"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.803176" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.803240" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:28.798783" elapsed="0.004489"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.805407" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.803400" elapsed="0.002064"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.803373" elapsed="0.002114"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.805521" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:28.805712" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:28.805756" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:28.784756" elapsed="0.021022"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.807933" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.806314" elapsed="0.001665"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.806297" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.808561" 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-08-10T02:07:28.808145" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.809097" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.808749" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.809173" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.809366" 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-08-10T02:07:28.805987" elapsed="0.003406"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.809548" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:28.784183" elapsed="0.025807"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.817756" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.817459" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.834473" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.835571" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:28.836222" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.817911" elapsed="0.018373"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.837248" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.836683" elapsed="0.000708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.843032" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.837715" elapsed="0.006749"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.846313" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.844536" elapsed="0.001842"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.844518" elapsed="0.001882"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.884307" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.884407" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:28.846539" elapsed="0.037902"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.886824" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.884699" elapsed="0.002192"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.884653" elapsed="0.002267"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.886965" elapsed="0.000062"/>
</return>
<msg time="2026-08-10T02:07:28.887230" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:28.887277" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:28.817066" elapsed="0.070234"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.889637" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.888023" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.888000" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.890421" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.889865" elapsed="0.000584"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.891024" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.890646" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.891111" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:28.891293" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:28.887623" elapsed="0.003696"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:28.891500" 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-08-10T02:07:28.816457" elapsed="0.075547"/>
</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-08-10T02:07:28.766252" elapsed="0.125819"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:28.759411" elapsed="0.132814"/>
</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-08-10T02:07:28.903987" 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-08-10T02:07:28.904158" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.903833" elapsed="0.000355"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:28.904843" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1da0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:28.904372" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.905320" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:28.905026" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.905795" 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-08-10T02:07:28.905523" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:28.906242" 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-08-10T02:07:28.905969" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.907451" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.906455" elapsed="0.001028"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.907992" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.907652" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.908602" 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-08-10T02:07:28.908243" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.909133" 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-08-10T02:07:28.908804" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.909672" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:28.909327" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.910189" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:28.909869" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.910757" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1da0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:28.910404" 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-08-10T02:07:28.903478" elapsed="0.007378"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.911414" 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-08-10T02:07:28.911005" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.911854" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:28.911608" 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-08-10T02:07:28.919771" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.919439" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.927687" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.928018" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:28.928132" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.919929" elapsed="0.008228"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.928593" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.928319" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.930994" 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-08-10T02:07:28.928834" elapsed="0.002223"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.933620" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.931126" elapsed="0.002569"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.931108" elapsed="0.002619"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:28.938433" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:28.938498" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:28.933946" elapsed="0.004584"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:28.940888" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:28.938637" elapsed="0.002308"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.938611" elapsed="0.002358"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:28.941012" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:07:28.941220" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:28.941263" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:28.919100" elapsed="0.022186"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.943517" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.941875" elapsed="0.001688"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.941857" elapsed="0.001728"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.944167" 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-08-10T02:07:28.943743" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.944759" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:28.944374" elapsed="0.000417"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:28.944849" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:28.945028" 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-08-10T02:07:28.941537" 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-08-10T02:07:28.945228" elapsed="0.000435"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:28.918504" elapsed="0.027228"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.953658" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:28.953324" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:28.968920" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:28.970057" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:28.970799" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:28.953817" elapsed="0.017046"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.971876" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.971225" elapsed="0.000754"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:28.977759" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:28.972305" elapsed="0.007676"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:28.981823" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:28.980055" elapsed="0.001824"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:28.980036" elapsed="0.001865"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.011823" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.011870" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:28.982044" elapsed="0.029849"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.013718" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.011973" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.011954" elapsed="0.001847"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.013834" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.014028" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:29.014071" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:28.952929" elapsed="0.061164"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.016274" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.014667" elapsed="0.001652"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.014649" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.016918" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.016515" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.017491" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.017108" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.017568" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:29.017748" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:29.014310" 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-08-10T02:07:29.017931" 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-08-10T02:07:28.952280" elapsed="0.066122"/>
</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-08-10T02:07:28.900113" elapsed="0.118353"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:28.892682" elapsed="0.125927"/>
</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-08-10T02:07:29.030117" 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-08-10T02:07:29.030269" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.029970" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:29.030936" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397dd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:29.030466" elapsed="0.000498"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.031432" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:29.031123" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.031890" 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-08-10T02:07:29.031609" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.032349" 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-08-10T02:07:29.032064" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.033451" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:29.032525" elapsed="0.000958"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.033996" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.033643" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.034586" 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-08-10T02:07:29.034234" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.035162" 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-08-10T02:07:29.034825" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.035704" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.035385" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.036235" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:29.035909" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.037819" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397dd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.036517" elapsed="0.001352"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:29.029628" elapsed="0.008298"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.038487" 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-08-10T02:07:29.038077" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.038955" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:29.038668" 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-08-10T02:07:29.046766" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.046462" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.053685" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.053932" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:29.054044" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.046942" elapsed="0.007127"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.054542" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.054261" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.056853" 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-08-10T02:07:29.054736" elapsed="0.002179"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.058738" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.056984" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.056965" elapsed="0.001844"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.062068" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.062114" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:29.058964" 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-08-10T02:07:29.064090" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.062212" elapsed="0.001933"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.062193" elapsed="0.001976"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.064203" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:29.064413" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:29.064457" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:29.046131" elapsed="0.018348"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.066607" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.065017" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.065000" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.067241" 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-08-10T02:07:29.066838" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.067794" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.067446" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.067868" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.068045" 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-08-10T02:07:29.064690" 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-08-10T02:07:29.068223" 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-08-10T02:07:29.045570" 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-08-10T02:07:29.076511" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.076186" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.088906" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.089405" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:29.089705" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.076666" elapsed="0.013066"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.090143" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.089891" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.092675" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.090346" elapsed="0.003296"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.095487" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.093714" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.093695" elapsed="0.001864"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.127510" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.127557" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:29.095702" elapsed="0.031878"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.129383" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.127659" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.127640" elapsed="0.001825"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.129499" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:29.129698" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:29.129742" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:29.075814" elapsed="0.053951"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.131932" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.130307" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.130290" elapsed="0.001709"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.132560" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.132144" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.133098" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.132749" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.133172" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:29.133365" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:29.129979" elapsed="0.003413"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.133547" 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-08-10T02:07:29.075187" elapsed="0.058805"/>
</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-08-10T02:07:29.026303" elapsed="0.107744"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:29.019075" elapsed="0.115087"/>
</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-08-10T02:07:29.145064" 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-08-10T02:07:29.145221" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:29.144907" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:29.145857" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec1d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:29.145425" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.146313" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:29.146035" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.146773" 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-08-10T02:07:29.146506" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.147251" 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-08-10T02:07:29.146977" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.148162" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:29.147444" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.148708" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.148372" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.149274" 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-08-10T02:07:29.148953" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.149808" 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-08-10T02:07:29.149484" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.150304" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.149997" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.150830" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.150515" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.151389" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec1d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.151040" 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-08-10T02:07:29.144573" elapsed="0.006914"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.152019" 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-08-10T02:07:29.151636" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.152455" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:07:29.152197" 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-08-10T02:07:29.160584" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.160256" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.167419" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.167679" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:29.167790" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.160739" elapsed="0.007077"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.168226" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.167976" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.170493" 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-08-10T02:07:29.168434" elapsed="0.002151"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.172438" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.170660" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.170639" elapsed="0.001874"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.176209" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.176255" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:29.172652" 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-08-10T02:07:29.178043" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.176368" elapsed="0.001730"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.176349" elapsed="0.001773"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.178156" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:29.178366" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:29.178411" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:29.159944" elapsed="0.018490"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.180744" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.179002" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.178983" elapsed="0.001829"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.181369" 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-08-10T02:07:29.180958" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.181900" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.181555" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.181975" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:29.182150" 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-08-10T02:07:29.178646" elapsed="0.003529"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.182327" 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-08-10T02:07:29.159379" elapsed="0.023415"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.190587" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.190270" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.203356" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.203821" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:29.204119" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.190741" elapsed="0.013405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.204573" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.204304" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.207075" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.204765" 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-08-10T02:07:29.209833" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.208093" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.208074" elapsed="0.001829"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.241448" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.241496" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:29.210042" elapsed="0.031477"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.243328" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.241597" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.241579" elapsed="0.001864"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.243487" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:29.243683" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:29.243726" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:29.189897" elapsed="0.053852"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.245885" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.244294" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.244276" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.246517" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.246102" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.247068" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.246705" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.247144" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.247322" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:29.243964" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.247521" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:29.189264" elapsed="0.058703"/>
</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-08-10T02:07:29.141248" elapsed="0.106774"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:29.134356" elapsed="0.113797"/>
</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-08-10T02:07:29.258935" 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-08-10T02:07:29.259122" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.258799" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:29.259734" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:29.259300" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.260189" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:29.259912" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.260653" 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-08-10T02:07:29.260381" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.261092" 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-08-10T02:07:29.260826" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.261964" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.261264" elapsed="0.000731"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.262490" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.262147" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.263043" 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-08-10T02:07:29.262723" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.263595" 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-08-10T02:07:29.263251" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.264092" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.263786" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.264771" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.264285" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.265295" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.264973" 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-08-10T02:07:29.258475" elapsed="0.006940"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.265945" 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-08-10T02:07:29.265563" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.266379" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.266125" 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-08-10T02:07:29.274087" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.273789" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.282443" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.282668" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:29.282777" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.274239" elapsed="0.008563"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.283246" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.282959" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.285553" 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-08-10T02:07:29.283485" elapsed="0.002130"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.287438" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.285682" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.285664" elapsed="0.001844"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.290721" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.290767" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:29.287645" elapsed="0.003144"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.292600" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.290862" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.290844" elapsed="0.001835"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.292712" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.292904" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:29.292948" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:29.273477" elapsed="0.019494"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.295260" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.293526" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.293508" elapsed="0.001819"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.295894" 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-08-10T02:07:29.295497" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.296447" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.296080" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.296522" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.296700" 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-08-10T02:07:29.293180" 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-08-10T02:07:29.296879" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:29.272913" elapsed="0.024408"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.306295" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.305999" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.321704" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.322167" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:29.322521" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.306467" elapsed="0.016081"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.322959" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.322708" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.325486" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.323164" elapsed="0.003289"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.328287" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.326524" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.326506" elapsed="0.001869"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.354403" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.354457" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:29.328513" elapsed="0.025968"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.356409" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.354577" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.354553" elapsed="0.001940"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.356529" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:07:29.356735" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:29.356780" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:29.305625" elapsed="0.051177"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.359004" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.357422" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.357404" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.359694" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.359239" elapsed="0.000483"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.360239" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.359884" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.360313" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:07:29.360510" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:29.357052" 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-08-10T02:07:29.360695" 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-08-10T02:07:29.304997" elapsed="0.056179"/>
</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-08-10T02:07:29.255229" elapsed="0.106003"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:29.248460" elapsed="0.112914"/>
</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-08-10T02:07:29.372106" 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-08-10T02:07:29.372255" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.371966" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:29.372877" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:29.372450" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.373351" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:29.373056" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.373794" 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-08-10T02:07:29.373528" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.374236" 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-08-10T02:07:29.373968" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.375126" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.374426" elapsed="0.000731"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.375675" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.375329" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.376233" 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-08-10T02:07:29.375914" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.376764" 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-08-10T02:07:29.376442" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.377444" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.376960" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.377963" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.377644" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.378495" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.378158" 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-08-10T02:07:29.371636" elapsed="0.006956"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.379116" 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-08-10T02:07:29.378738" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.379585" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.379328" 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-08-10T02:07:29.387314" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.386980" elapsed="0.000377"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.394015" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.394282" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:29.394421" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.387488" elapsed="0.006959"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.394856" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.394607" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.397190" 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-08-10T02:07:29.395076" 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-08-10T02:07:29.399071" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.397320" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.397301" elapsed="0.001840"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.402394" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.402441" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:29.399293" elapsed="0.003171"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.404266" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.402538" elapsed="0.001784"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.402520" elapsed="0.001842"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.404397" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.404588" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:29.404633" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:29.386667" elapsed="0.018072"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.407026" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.405282" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.405265" elapsed="0.001830"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.407671" 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-08-10T02:07:29.407256" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.408212" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.407866" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.408288" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:29.408483" 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-08-10T02:07:29.404956" elapsed="0.003552"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.408661" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:29.386102" 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-08-10T02:07:29.416848" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.416552" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.430227" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.430705" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:29.431003" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.417007" elapsed="0.014023"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.431805" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.431190" elapsed="0.000792"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.438268" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.432552" elapsed="0.008036"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.444307" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.440776" elapsed="0.003604"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.440725" elapsed="0.003679"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.470211" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.470259" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:29.444558" elapsed="0.025725"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.472189" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.470422" elapsed="0.001824"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.470402" elapsed="0.001868"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.472304" elapsed="0.000051"/>
</return>
<msg time="2026-08-10T02:07:29.472537" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:29.472582" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:29.416164" elapsed="0.056441"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.474807" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.473221" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.473204" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.475501" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.475028" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.476041" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.475690" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.476117" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.476294" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:29.472865" elapsed="0.003454"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.476495" 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-08-10T02:07:29.415553" elapsed="0.061421"/>
</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-08-10T02:07:29.368366" elapsed="0.108667"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:29.361570" elapsed="0.115602"/>
</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-08-10T02:07:29.488121" 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-08-10T02:07:29.488295" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.487975" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:29.488924" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d8b80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:29.488494" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.489409" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:29.489105" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.489853" 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-08-10T02:07:29.489585" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.490294" 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-08-10T02:07:29.490028" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.491205" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.490489" elapsed="0.000747"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.491771" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.491435" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.492325" 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-08-10T02:07:29.492004" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.492869" 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-08-10T02:07:29.492540" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.493543" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.493058" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.494064" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.493743" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.494600" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d8b80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.494261" 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-08-10T02:07:29.487637" elapsed="0.007061"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.495223" 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-08-10T02:07:29.494844" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.495668" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.495428" 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-08-10T02:07:29.503409" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.503054" elapsed="0.000385"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.510656" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.510959" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:29.511123" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.503578" elapsed="0.007581"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.511781" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.511425" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.514982" 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-08-10T02:07:29.512089" elapsed="0.002978"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.517612" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.515161" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.515136" elapsed="0.002574"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.521664" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.521710" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:29.517905" elapsed="0.003828"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.523523" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.521807" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.521789" elapsed="0.001814"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.523642" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.523835" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:29.523879" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:29.502741" elapsed="0.021161"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.526189" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.524457" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.524439" elapsed="0.001818"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.526814" 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-08-10T02:07:29.526418" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.527396" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.527002" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.527474" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.527649" 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-08-10T02:07:29.524110" elapsed="0.003564"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.527828" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:29.502165" elapsed="0.026106"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.536053" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.535757" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.547785" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.548829" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:29.549519" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.536206" elapsed="0.013373"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.550535" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.549933" elapsed="0.000703"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.556143" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.550954" elapsed="0.006196"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.558981" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.557222" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.557203" elapsed="0.001856"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.659917" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.659989" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:29.559195" elapsed="0.100819"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.662046" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.660157" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.660121" elapsed="0.002014"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.662175" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:07:29.662422" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:29.662467" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:29.535316" elapsed="0.127174"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.664766" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.663140" elapsed="0.001672"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.663122" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.665491" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.664987" elapsed="0.000532"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.666028" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.665679" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.666104" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.666282" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:29.662767" 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-08-10T02:07:29.666483" 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-08-10T02:07:29.534705" elapsed="0.132258"/>
</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-08-10T02:07:29.484363" elapsed="0.182660"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:29.477412" elapsed="0.189744"/>
</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-08-10T02:07:29.678090" 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-08-10T02:07:29.678263" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.677945" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:29.678895" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:29.678464" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.679377" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:29.679078" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.679865" 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-08-10T02:07:29.679577" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.680306" 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-08-10T02:07:29.680041" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.681362" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.680501" elapsed="0.000893"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.681889" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.681553" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.682486" 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-08-10T02:07:29.682149" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.683000" 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-08-10T02:07:29.682679" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.683516" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.683190" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.684053" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:29.683737" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.684581" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.684247" 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-08-10T02:07:29.677613" elapsed="0.007064"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.685204" 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-08-10T02:07:29.684825" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.685644" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:29.685402" 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-08-10T02:07:29.693417" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.693089" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.701875" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.702263" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:29.702452" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.693574" elapsed="0.008914"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.703063" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.702714" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.706282" 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-08-10T02:07:29.703391" elapsed="0.002999"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.708915" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.706487" elapsed="0.002496"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.706461" elapsed="0.002552"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.713458" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.713505" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:29.709205" elapsed="0.004323"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.715470" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.713607" elapsed="0.001919"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.713586" elapsed="0.001965"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.715597" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:07:29.715796" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:29.715839" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:29.692773" elapsed="0.023088"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.718021" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.716444" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.716427" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.718655" 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-08-10T02:07:29.718233" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.719185" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.718841" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.719260" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:29.719454" 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-08-10T02:07:29.716092" elapsed="0.003387"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.719663" 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-08-10T02:07:29.692157" elapsed="0.027965"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.727924" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.727579" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.742401" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.743466" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:29.744160" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.728082" elapsed="0.016138"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.745218" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.744616" elapsed="0.000704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.750883" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.745676" elapsed="0.007353"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.754840" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.753100" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.753081" elapsed="0.001829"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.781131" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.781184" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:29.755049" elapsed="0.026158"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.783108" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.781302" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.781280" elapsed="0.001911"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.783227" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:07:29.783449" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:29.783493" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:29.727187" elapsed="0.056328"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.785732" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.784148" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.784130" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.786394" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.785945" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.786927" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.786581" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.787002" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:29.787177" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:29.783799" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.787373" 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-08-10T02:07:29.726574" elapsed="0.061275"/>
</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-08-10T02:07:29.674365" elapsed="0.113541"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:29.667568" elapsed="0.120470"/>
</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-08-10T02:07:29.798993" 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-08-10T02:07:29.799159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:29.798845" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:29.799835" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:29.799358" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.800299" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:29.800015" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.800762" 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-08-10T02:07:29.800494" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.801203" 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-08-10T02:07:29.800935" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.802318" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:29.801395" elapsed="0.000970"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.802866" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.802524" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.803450" 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-08-10T02:07:29.803108" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.803982" 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-08-10T02:07:29.803643" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.804508" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.804173" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.805017" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.804702" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.805546" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.805210" 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-08-10T02:07:29.798508" elapsed="0.007133"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.806170" 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-08-10T02:07:29.805791" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.806606" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;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-08-10T02:07:29.806365" 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-08-10T02:07:29.818356" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.818030" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.825922" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.826361" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:29.826529" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.818516" elapsed="0.008052"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.827223" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.826853" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.830710" 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-08-10T02:07:29.827530" elapsed="0.003273"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.833530" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.830904" elapsed="0.002698"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.830876" elapsed="0.002759"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.837900" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.837946" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:29.833845" elapsed="0.004124"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.839997" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.838043" elapsed="0.002010"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.838024" elapsed="0.002053"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.840111" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:29.840305" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:29.840367" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:29.817716" elapsed="0.022675"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.842523" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.840932" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.840915" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.843133" 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-08-10T02:07:29.842737" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.843684" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.843318" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.843799" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:29.843979" 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-08-10T02:07:29.840603" elapsed="0.003402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.844159" 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-08-10T02:07:29.817139" elapsed="0.027493"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.852419" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.852105" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.867124" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.868208" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:29.868869" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.852575" elapsed="0.016354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.869875" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.869281" elapsed="0.000694"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.875540" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.870287" elapsed="0.006932"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.879033" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.877292" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.877273" elapsed="0.001830"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.903948" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.903995" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:29.879242" elapsed="0.024776"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.905837" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.904095" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.904076" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.905951" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:29.906144" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:29.906188" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:29.851695" elapsed="0.054515"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.908415" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.906772" elapsed="0.001689"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.906754" elapsed="0.001729"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.909034" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.908628" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.909594" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.909222" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.909670" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:07:29.909854" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:29.906443" elapsed="0.003436"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.910035" 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-08-10T02:07:29.851065" elapsed="0.059434"/>
</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-08-10T02:07:29.795222" elapsed="0.115332"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:29.788391" elapsed="0.122282"/>
</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-08-10T02:07:29.921695" 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-08-10T02:07:29.921864" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:29.921545" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:29.922525" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:29.922052" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.922989" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:29.922707" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.923449" 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-08-10T02:07:29.923163" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:29.923933" 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-08-10T02:07:29.923623" elapsed="0.000337"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.925077" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:29.924110" elapsed="0.000998"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.925628" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.925269" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.926200" 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-08-10T02:07:29.925876" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.926739" 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-08-10T02:07:29.926410" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.927244" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.926933" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.927771" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.927455" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.928301" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:29.927984" 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-08-10T02:07:29.921193" elapsed="0.007224"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.928951" 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-08-10T02:07:29.928566" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.929386" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;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-08-10T02:07:29.929128" 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-08-10T02:07:29.937110" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.936806" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.944510" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.944783" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:29.944895" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.937267" elapsed="0.007653"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.945383" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.945112" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.947675" 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-08-10T02:07:29.945572" elapsed="0.002166"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.953847" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.947811" elapsed="0.006107"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.947790" elapsed="0.006159"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:29.958089" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:29.958135" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:29.954146" elapsed="0.004011"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:29.960079" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:29.958231" elapsed="0.001903"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.958213" elapsed="0.001946"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:29.960193" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:29.960406" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:29.960450" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:29.936493" elapsed="0.023980"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:29.962604" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:29.961014" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:29.960996" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.963215" 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-08-10T02:07:29.962822" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.963768" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:29.963418" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:29.963842" elapsed="0.000053"/>
</return>
<msg time="2026-08-10T02:07:29.964049" 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-08-10T02:07:29.960686" elapsed="0.003388"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:29.964228" 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-08-10T02:07:29.935922" elapsed="0.028777"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.972498" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:29.972180" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:29.989769" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:29.990864" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:29.991525" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:29.972653" elapsed="0.018932"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.992573" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.991965" elapsed="0.000712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:29.998243" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:29.992992" elapsed="0.007543"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.002883" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.000699" elapsed="0.002233"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.000655" elapsed="0.002300"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.026982" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.027030" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:30.003095" elapsed="0.023958"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.028906" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.027134" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.027114" elapsed="0.001873"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.029021" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.029215" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:30.029259" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:29.971760" elapsed="0.057521"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.031495" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.029848" elapsed="0.001695"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.029829" elapsed="0.001736"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.032179" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.031716" elapsed="0.000492"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.032753" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.032391" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.032831" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:30.033012" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:30.029515" 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-08-10T02:07:30.033198" 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-08-10T02:07:29.971133" elapsed="0.062543"/>
</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-08-10T02:07:29.917872" elapsed="0.115867"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:29.910949" elapsed="0.122917"/>
</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-08-10T02:07:30.044856" 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-08-10T02:07:30.045013" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:30.044715" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:30.045634" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda22a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:30.045194" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.046089" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:30.045813" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.046556" 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-08-10T02:07:30.046262" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.046995" 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-08-10T02:07:30.046730" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.050090" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:30.047167" elapsed="0.002955"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.050636" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.050281" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.051195" 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-08-10T02:07:30.050872" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.051731" 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-08-10T02:07:30.051404" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.052272" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:30.051922" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.052810" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:30.052491" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.053344" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda22a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.053007" 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-08-10T02:07:30.044274" elapsed="0.009170"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.053969" 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-08-10T02:07:30.053590" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.054403" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:30.054147" 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-08-10T02:07:30.062132" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.061830" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.069857" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.070104" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:30.070224" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.062286" elapsed="0.007964"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.070726" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.070465" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.073490" 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-08-10T02:07:30.070914" elapsed="0.002714"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.077765" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.073782" elapsed="0.004097"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.073740" elapsed="0.004189"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.082862" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.082907" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:30.078236" elapsed="0.004694"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.084880" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.083005" elapsed="0.001932"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.082986" elapsed="0.001975"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.084995" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:30.085187" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:30.085230" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:30.061519" elapsed="0.023733"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.087400" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.085815" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.085797" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.089697" 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-08-10T02:07:30.087613" elapsed="0.002121"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.090254" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.089899" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.090329" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:07:30.090523" 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-08-10T02:07:30.085481" elapsed="0.005067"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.090700" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:30.060944" elapsed="0.030200"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.098900" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.098601" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.112708" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.113760" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:30.114449" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.099053" elapsed="0.015457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.115458" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.114865" elapsed="0.000695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.121004" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.115874" elapsed="0.006100"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.123816" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.122045" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.122026" elapsed="0.001861"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.146536" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.146588" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:30.124023" elapsed="0.022590"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.148519" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.146703" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.146680" elapsed="0.001923"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.148639" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:07:30.148848" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:30.148893" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:30.098213" elapsed="0.050702"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.151200" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.149512" elapsed="0.001734"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.149494" elapsed="0.001773"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.151863" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.151434" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.152457" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.152052" elapsed="0.000431"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.152533" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:30.152710" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:30.149156" elapsed="0.003579"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.152889" 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-08-10T02:07:30.097605" elapsed="0.055788"/>
</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-08-10T02:07:30.041024" elapsed="0.112431"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:30.034182" elapsed="0.119412"/>
</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-08-10T02:07:30.164525" 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-08-10T02:07:30.164680" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:30.164379" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:30.165277" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:30.164861" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.165761" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:30.165475" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.166201" 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-08-10T02:07:30.165936" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.166655" 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-08-10T02:07:30.166389" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.167511" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:30.166829" elapsed="0.000713"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.168214" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.167699" elapsed="0.000559"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.168805" 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-08-10T02:07:30.168480" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.169323" 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-08-10T02:07:30.168998" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.169844" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:30.169532" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.170369" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:30.170037" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.170882" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.170564" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:30.164001" elapsed="0.006977"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.171522" 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-08-10T02:07:30.171124" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.171936" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:30.171698" 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-08-10T02:07:30.179673" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.179363" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.186665" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.187000" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:30.187153" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.179829" elapsed="0.007359"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.187792" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.187438" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.190930" 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-08-10T02:07:30.188054" elapsed="0.003004"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.193610" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.191155" elapsed="0.002523"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.191129" elapsed="0.002580"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.197693" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.197739" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:30.193900" elapsed="0.003861"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.199531" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.197836" elapsed="0.001751"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.197818" elapsed="0.001792"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.199644" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.199840" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:30.199883" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:30.179034" elapsed="0.020872"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.204175" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.200480" elapsed="0.003744"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.200462" elapsed="0.003783"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.204807" 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-08-10T02:07:30.204408" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.205358" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.204995" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.205436" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:30.205612" 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-08-10T02:07:30.200115" elapsed="0.005522"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.205790" 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-08-10T02:07:30.178480" elapsed="0.027755"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.214059" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.213761" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.228956" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.230021" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:30.230742" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.214215" elapsed="0.016587"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.231762" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.231158" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.241214" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.238856" elapsed="0.003316"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.244006" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.242243" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.242225" elapsed="0.001853"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.270520" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.270567" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:30.244265" elapsed="0.026325"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.272397" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.270670" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.270651" elapsed="0.001829"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.272517" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:30.272714" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:30.272758" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:30.213386" elapsed="0.059394"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.274920" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.273328" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.273310" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.275552" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.275134" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.276092" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.275743" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.276168" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:30.276424" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:30.272999" 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-08-10T02:07:30.276610" 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-08-10T02:07:30.212749" elapsed="0.064311"/>
</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-08-10T02:07:30.160753" elapsed="0.116364"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:30.153914" elapsed="0.123318"/>
</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-08-10T02:07:30.287956" 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-08-10T02:07:30.288103" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:30.287819" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:30.288704" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397f60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:30.288295" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.289158" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:30.288882" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.289621" 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-08-10T02:07:30.289352" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.290058" 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-08-10T02:07:30.289795" elapsed="0.000288"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.290804" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:30.290230" elapsed="0.000604"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.291313" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.290988" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.291901" 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-08-10T02:07:30.291575" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.292490" 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-08-10T02:07:30.292096" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.293002" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:30.292687" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.293534" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:30.293197" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.294050" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397f60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.293730" 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-08-10T02:07:30.287494" elapsed="0.006653"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.294700" 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-08-10T02:07:30.294296" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.295122" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:30.294882" 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-08-10T02:07:30.303033" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.302733" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.309846" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.310112" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:30.310268" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.303189" elapsed="0.007116"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.310919" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.310562" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.314074" 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-08-10T02:07:30.311184" elapsed="0.003014"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.316805" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.314296" elapsed="0.002579"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.314270" elapsed="0.002630"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.319680" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.319729" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:30.317040" elapsed="0.002714"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.321553" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.319828" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.319810" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.321667" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.321861" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:30.321904" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:30.302420" elapsed="0.019507"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.324067" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.322485" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.322468" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.324743" 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-08-10T02:07:30.324319" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.325276" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.324930" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.325369" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:30.325553" 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-08-10T02:07:30.322138" elapsed="0.003441"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.325731" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:30.301845" elapsed="0.024330"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.333936" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.333616" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.351685" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.352798" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:30.353499" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.334106" elapsed="0.019455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.354529" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.353920" elapsed="0.000712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.360254" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.354952" elapsed="0.006653"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.363449" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.361684" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.361663" elapsed="0.001861"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.391254" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.391302" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:30.363665" elapsed="0.027660"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.393154" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.391422" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.391403" elapsed="0.001833"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.393270" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:07:30.393492" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:30.393537" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:30.333221" elapsed="0.060339"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.395724" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.394140" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.394122" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.396369" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.395940" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.396909" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.396559" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.396984" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:30.397161" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:30.393801" elapsed="0.003386"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.397358" 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-08-10T02:07:30.332609" elapsed="0.065207"/>
</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-08-10T02:07:30.284213" elapsed="0.113659"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:30.277424" elapsed="0.120572"/>
</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-08-10T02:07:30.409057" 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-08-10T02:07:30.409206" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:30.408915" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:30.409820" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0d10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:30.409405" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.410278" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:30.409999" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.410742" 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-08-10T02:07:30.410475" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.411178" 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-08-10T02:07:30.410915" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.412027" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:30.411370" elapsed="0.000688"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.412574" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.412213" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.413131" 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-08-10T02:07:30.412809" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.413666" 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-08-10T02:07:30.413322" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.414166" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:30.413857" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.414695" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:30.414377" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.415202" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0d10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.414888" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:30.408588" elapsed="0.006710"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.415857" 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-08-10T02:07:30.415467" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.416275" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:30.416036" 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-08-10T02:07:30.424038" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.423739" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.430278" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.430512" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:30.430620" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.424194" elapsed="0.006452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.431050" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.430802" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.433706" 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-08-10T02:07:30.431235" elapsed="0.002602"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.436393" elapsed="0.000045"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.433935" elapsed="0.002560"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.433908" elapsed="0.002622"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.440696" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.440745" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:30.436729" elapsed="0.004038"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.442540" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.440841" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.440822" elapsed="0.001797"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.442653" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.442844" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:30.442887" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:30.423422" elapsed="0.019487"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.445046" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.443461" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.443443" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.445671" 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-08-10T02:07:30.445258" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.446204" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.445861" elapsed="0.000369"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.446279" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.446472" 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-08-10T02:07:30.443117" 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-08-10T02:07:30.446650" elapsed="0.000378"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:30.422857" elapsed="0.024234"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.454866" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.454573" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.469523" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.470422" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:30.471057" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.455021" elapsed="0.016096"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.472078" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.471515" elapsed="0.000664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.478123" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.472556" elapsed="0.007689"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.482947" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.480442" elapsed="0.002554"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.480392" elapsed="0.002627"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.509632" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.509678" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:30.483158" elapsed="0.026543"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.511507" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.509779" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.509761" elapsed="0.001827"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.511622" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.511815" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:30.511859" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:30.454185" elapsed="0.057696"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.514124" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.512443" elapsed="0.001726"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.512424" elapsed="0.001767"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.514758" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.514356" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.515295" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.514945" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.515389" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:30.515568" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:30.512096" 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-08-10T02:07:30.515753" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:30.453578" elapsed="0.062622"/>
</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-08-10T02:07:30.405291" elapsed="0.110965"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:30.398283" elapsed="0.118105"/>
</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-08-10T02:07:30.527182" 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-08-10T02:07:30.527314" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:30.527043" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:30.527898" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4cc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:30.527510" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.528366" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:30.528076" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.528841" 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-08-10T02:07:30.528571" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.529284" 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-08-10T02:07:30.529019" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.530057" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:30.529476" elapsed="0.000610"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.530584" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.530239" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.531139" 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-08-10T02:07:30.530817" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.531678" 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-08-10T02:07:30.531346" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.532178" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:30.531869" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.532738" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:30.532388" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.533256" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4cc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.532940" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:30.526720" elapsed="0.006650"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.533895" 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-08-10T02:07:30.533517" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.534310" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:30.534074" 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-08-10T02:07:30.542229" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.541903" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.548991" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.549233" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:30.549366" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.542407" elapsed="0.006986"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.549812" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.549561" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.552053" 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-08-10T02:07:30.549999" 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-08-10T02:07:30.554196" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.552234" elapsed="0.002035"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.552212" elapsed="0.002089"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.558389" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.558453" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:30.554520" elapsed="0.003965"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.560978" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.558589" elapsed="0.002466"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.558563" elapsed="0.002525"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.561135" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:07:30.561438" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:30.561499" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:30.541562" elapsed="0.019968"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.563766" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.562187" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.562169" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.564402" 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-08-10T02:07:30.563978" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.564973" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.564618" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.565049" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:30.565225" 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-08-10T02:07:30.561856" elapsed="0.003394"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.565423" 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-08-10T02:07:30.540995" elapsed="0.024885"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.573920" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.573624" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.587483" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.588127" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:30.588564" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.574076" elapsed="0.014549"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.589204" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.588855" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.596726" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.589490" elapsed="0.008501"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.599804" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.598063" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.598044" elapsed="0.001831"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.626359" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.626408" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:30.600023" elapsed="0.026408"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.628204" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.626509" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.626490" elapsed="0.001793"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.628318" elapsed="0.000060"/>
</return>
<msg time="2026-08-10T02:07:30.628561" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:30.628607" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:30.573231" elapsed="0.055437"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.630827" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.629236" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.629218" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.631464" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.631037" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.631997" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.631650" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.632072" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:30.632248" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:30.628905" elapsed="0.003369"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.632447" 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-08-10T02:07:30.572613" elapsed="0.060297"/>
</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-08-10T02:07:30.523480" elapsed="0.109485"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:30.516657" elapsed="0.116435"/>
</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-08-10T02:07:30.644005" 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-08-10T02:07:30.644158" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:30.643862" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:30.644856" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe16110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:30.644353" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.645325" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:30.645040" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.645791" 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-08-10T02:07:30.645522" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.646230" 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-08-10T02:07:30.645964" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.647071" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:30.646422" elapsed="0.000680"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.647604" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.647254" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.648153" 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-08-10T02:07:30.647835" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.648703" 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-08-10T02:07:30.648360" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.649204" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.648895" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.649748" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.649419" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.650255" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe16110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.649941" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:30.643533" elapsed="0.006835"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.650896" 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-08-10T02:07:30.650517" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.651308" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:30.651073" 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-08-10T02:07:30.659483" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.659162" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.666164" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.666403" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:30.666513" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.659640" elapsed="0.006899"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.666950" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.666700" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.669279" 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-08-10T02:07:30.667137" elapsed="0.002260"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.671840" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.669470" elapsed="0.002440"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.669450" elapsed="0.002490"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.676231" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.676295" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:30.672138" elapsed="0.004188"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.679616" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.676454" elapsed="0.003289"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.676427" elapsed="0.003370"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.679873" elapsed="0.000063"/>
</return>
<msg time="2026-08-10T02:07:30.680308" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:30.680446" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:30.658847" 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-08-10T02:07:30.683380" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.681792" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.681774" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.683998" 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-08-10T02:07:30.683595" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.684558" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.684185" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.684635" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:30.684843" 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-08-10T02:07:30.681039" elapsed="0.003831"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.685028" 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-08-10T02:07:30.658251" elapsed="0.027252"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.693565" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.693239" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.709102" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.709768" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:30.710182" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.693719" elapsed="0.016501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.710833" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.710475" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.714367" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.711099" elapsed="0.004579"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.718230" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.715777" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.715750" elapsed="0.002578"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.762491" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.762557" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:30.718544" elapsed="0.044037"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.764629" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.762714" elapsed="0.001976"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.762677" elapsed="0.002043"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.764761" elapsed="0.000064"/>
</return>
<msg time="2026-08-10T02:07:30.765012" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:30.765056" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:30.692861" elapsed="0.072217"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.767303" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.765737" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.765719" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.768010" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.767538" elapsed="0.000498"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.768563" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.768196" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.768638" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.768835" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:30.765364" 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-08-10T02:07:30.769019" 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-08-10T02:07:30.692146" elapsed="0.077377"/>
</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-08-10T02:07:30.640257" elapsed="0.129326"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:30.633455" elapsed="0.136264"/>
</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-08-10T02:07:30.780920" 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-08-10T02:07:30.781108" 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-08-10T02:07:30.780742" elapsed="0.000395"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:30.781728" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034ef0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:30.781295" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.782190" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:30.781908" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.782659" 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-08-10T02:07:30.782383" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.783099" 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-08-10T02:07:30.782832" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.783858" 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-08-10T02:07:30.783276" elapsed="0.000612"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.784398" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.784045" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.784998" 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-08-10T02:07:30.784657" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.785535" 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-08-10T02:07:30.785191" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.786035" 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-08-10T02:07:30.785725" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.786561" 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-08-10T02:07:30.786226" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.787073" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034ef0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.786754" 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-08-10T02:07:30.780399" elapsed="0.006770"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.787722" 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-08-10T02:07:30.787318" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.788139" 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-08-10T02:07:30.787901" elapsed="0.000293"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.796084" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.795773" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.803908" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.804144" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:30.804250" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.796239" elapsed="0.008037"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.804705" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.804455" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.807669" 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-08-10T02:07:30.804970" elapsed="0.002781"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.810478" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.807858" elapsed="0.002696"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.807828" elapsed="0.002760"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.814374" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.814421" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:30.810846" elapsed="0.003597"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.816183" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.814518" elapsed="0.001719"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.814499" elapsed="0.001762"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.816294" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:07:30.816507" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:30.816550" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:30.795452" elapsed="0.021119"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.818695" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.817123" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.817105" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.819299" 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-08-10T02:07:30.818908" elapsed="0.000417"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.819844" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.819501" elapsed="0.000369"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.819919" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.820093" 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-08-10T02:07:30.816785" elapsed="0.003332"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.820271" 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-08-10T02:07:30.794871" elapsed="0.025872"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.828474" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.828158" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.844038" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.844758" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:30.845226" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.828629" elapsed="0.016637"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.845900" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.845527" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.849675" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.846184" elapsed="0.004920"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.853887" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.851207" elapsed="0.002730"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.851179" elapsed="0.002780"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.884391" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.884449" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:30.854097" elapsed="0.030376"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.886373" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.884552" elapsed="0.001886"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.884533" elapsed="0.001929"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.886496" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.886688" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:30.886732" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:30.827784" elapsed="0.058970"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.888892" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.887300" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.887282" elapsed="0.001704"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.889557" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.889131" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.890093" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.889744" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.890168" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.890362" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:30.886970" 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-08-10T02:07:30.890544" 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-08-10T02:07:30.827152" elapsed="0.063837"/>
</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-08-10T02:07:30.776994" elapsed="0.114052"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:30.770127" elapsed="0.121040"/>
</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-08-10T02:07:30.902137" 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-08-10T02:07:30.902276" 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-08-10T02:07:30.901998" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:30.902860" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368a90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:30.902473" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.903314" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:30.903039" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.903773" 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-08-10T02:07:30.903507" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:30.904209" 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-08-10T02:07:30.903945" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.904959" 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-08-10T02:07:30.904400" elapsed="0.000591"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.905492" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.905145" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.906046" 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-08-10T02:07:30.905726" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.906581" 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-08-10T02:07:30.906236" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.907084" 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-08-10T02:07:30.906776" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.907612" 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-08-10T02:07:30.907277" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.908121" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368a90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:30.907806" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:30.901661" elapsed="0.006556"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.908762" 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-08-10T02:07:30.908378" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.909202" 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-08-10T02:07:30.908962" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.917083" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.916753" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.923774" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.923973" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:30.924077" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.917240" elapsed="0.006862"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.924541" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.924260" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.927317" 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-08-10T02:07:30.924728" elapsed="0.002695"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.930206" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.927567" elapsed="0.002711"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.927538" elapsed="0.002773"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:30.934139" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:30.934185" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:30.930539" elapsed="0.003669"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:30.935974" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:30.934281" elapsed="0.001748"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.934262" elapsed="0.001790"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:30.936086" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:30.936276" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:30.936319" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:30.916439" elapsed="0.019922"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.938508" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.936898" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.936880" elapsed="0.001694"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.939114" 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-08-10T02:07:30.938723" elapsed="0.000417"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.939660" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:30.939298" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:30.939735" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:30.939910" 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-08-10T02:07:30.936571" elapsed="0.003364"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:30.940095" 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-08-10T02:07:30.915865" elapsed="0.024691"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.948292" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:30.947998" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:30.961979" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:30.962675" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:30.963127" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:30.948464" elapsed="0.014702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.963809" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.963434" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:30.967376" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:30.964069" elapsed="0.004631"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:30.971376" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:30.968803" elapsed="0.002648"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:30.968775" elapsed="0.002709"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.002213" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:31.002261" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:30.971700" elapsed="0.030584"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:31.004111" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:31.002400" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.002379" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:31.004224" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:07:31.004445" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:31.004489" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:30.947622" elapsed="0.056890"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:31.006708" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.005119" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.005100" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.007346" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.006924" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.007886" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.007537" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:31.007962" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:31.008138" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:31.004751" elapsed="0.003413"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:31.008317" 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-08-10T02:07:30.947000" elapsed="0.061795"/>
</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-08-10T02:07:30.898373" elapsed="0.110479"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:30.891466" elapsed="0.117510"/>
</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-08-10T02:07:31.019952" 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-08-10T02:07:31.020099" 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-08-10T02:07:31.019811" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.020688" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.020278" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.021188" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.020868" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.021653" 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-08-10T02:07:31.021384" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.022091" 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-08-10T02:07:31.021827" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.022810" 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-08-10T02:07:31.022263" elapsed="0.000578"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.023325" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.022995" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.023901" 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-08-10T02:07:31.023574" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.024433" 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-08-10T02:07:31.024092" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.024932" 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-08-10T02:07:31.024624" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.025488" 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-08-10T02:07:31.025153" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.025998" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.025682" 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-08-10T02:07:31.019478" elapsed="0.006615"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.026635" 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-08-10T02:07:31.026240" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.027050" 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-08-10T02:07:31.026813" elapsed="0.000293"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.034955" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:31.034651" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.041546" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:31.041751" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:31.041858" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:31.035118" elapsed="0.006765"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.042288" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.042040" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.044526" 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-08-10T02:07:31.042492" 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-08-10T02:07:31.046780" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.044684" elapsed="0.002164"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.044666" elapsed="0.002212"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.050653" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:31.050717" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:31.047068" elapsed="0.003680"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:31.053249" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:31.050850" elapsed="0.002480"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.050825" elapsed="0.002562"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:31.053435" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:31.053703" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:31.053751" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:31.034319" elapsed="0.019454"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:31.055897" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.054311" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.054294" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.056526" 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-08-10T02:07:31.056114" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.057057" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.056712" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:31.057148" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:31.057325" 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-08-10T02:07:31.053985" elapsed="0.003382"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:31.057523" 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-08-10T02:07:31.033764" elapsed="0.024210"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.065696" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:31.065401" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.080761" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:31.081450" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:31.081858" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:31.065850" elapsed="0.016046"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.082500" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.082116" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.086086" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;361000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;396000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;473000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;518000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;10&lt;/second&gt;&lt;nanosecond&gt;80000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;10&lt;/second&gt;&lt;nanosecond&gt;115000000&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;11&lt;/second&gt;&lt;nanosecond&gt;632000000&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;10&lt;/second&gt;&lt;nanosecond&gt;155000000&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;11&lt;/second&gt;&lt;nanosecond&gt;679000000&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;10&lt;/second&gt;&lt;nanosecond&gt;197000000&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;728000000&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;777000000&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;10&lt;/second&gt;&lt;nanosecond&gt;696000000&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;11&lt;/second&gt;&lt;nanosecond&gt;2000000&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;812000000&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;11&lt;/second&gt;&lt;nanosecond&gt;45000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;86000000&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;836000000&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;11&lt;/second&gt;&lt;nanosecond&gt;117000000&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;11&lt;/second&gt;&lt;nanosecond&gt;151000000&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;11&lt;/second&gt;&lt;nanosecond&gt;194000000&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;11&lt;/second&gt;&lt;nanosecond&gt;238000000&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;925000000&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;11&lt;/second&gt;&lt;nanosecond&gt;275000000&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;11&lt;/second&gt;&lt;nanosecond&gt;308000000&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;10&lt;/second&gt;&lt;nanosecond&gt;304000000&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;10&lt;/second&gt;&lt;nanosecond&gt;351000000&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;843000000&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;10&lt;/second&gt;&lt;nanosecond&gt;388000000&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;9&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;426000000&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;10&lt;/second&gt;&lt;nanosecond&gt;466000000&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;10&lt;/second&gt;&lt;nanosecond&gt;504000000&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;10&lt;/second&gt;&lt;nanosecond&gt;542000000&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;9&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;578000000&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;9&lt;/second&gt;&lt;nanosecond&gt;664000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;886000000&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;10&lt;/second&gt;&lt;nanosecond&gt;616000000&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;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;928000000&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;10&lt;/second&gt;&lt;nanosecond&gt;656000000&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;9&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;965000000&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;9&lt;/second&gt;&lt;nanosecond&gt;781000000&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;732000000&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;762000000&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;789000000&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;10&lt;/second&gt;&lt;nanosecond&gt;265000000&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;10&lt;/second&gt;&lt;nanosecond&gt;237000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.082760" 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-08-10T02:07:31.089940" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.087546" elapsed="0.002443"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.087520" elapsed="0.002490"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.173519" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:31.173587" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:31.090158" elapsed="0.083455"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:31.175611" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:31.173747" elapsed="0.001925"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.173717" elapsed="0.001982"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:31.175737" elapsed="0.000036"/>
</return>
<msg time="2026-08-10T02:07:31.175952" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:31.175997" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:31.065004" elapsed="0.111016"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:31.178264" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.176661" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.176642" elapsed="0.001706"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.178958" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.178504" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.179514" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.179146" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:31.179590" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:31.179766" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:31.176283" 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-08-10T02:07:31.179946" 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-08-10T02:07:31.064390" elapsed="0.116046"/>
</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-08-10T02:07:31.016167" elapsed="0.164327"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:31.009345" elapsed="0.171278"/>
</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-08-10T02:07:31.191653" 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-08-10T02:07:31.191835" 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-08-10T02:07:31.191510" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.192431" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8a070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.192013" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.192889" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.192609" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.193657" 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-08-10T02:07:31.193065" elapsed="0.000659"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.194746" 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-08-10T02:07:31.194075" elapsed="0.000732"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.196368" 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-08-10T02:07:31.195138" elapsed="0.001300"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.197702" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.196776" elapsed="0.001032"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.199022" 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-08-10T02:07:31.198263" elapsed="0.000850"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.200189" 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-08-10T02:07:31.199475" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.201387" 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-08-10T02:07:31.200639" elapsed="0.000850"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.202547" 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-08-10T02:07:31.201820" elapsed="0.000827"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.203703" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8a070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.202970" elapsed="0.000824"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:31.191163" elapsed="0.012751"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.205106" 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-08-10T02:07:31.204236" elapsed="0.000936"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.205874" 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-08-10T02:07:31.205592" 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-08-10T02:07:31.213732" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:31.213427" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.219922" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:31.220166" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:31.220271" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:31.213887" elapsed="0.006409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.220730" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.220479" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.223709" 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-08-10T02:07:31.220923" elapsed="0.002918"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:31.226598" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.223946" elapsed="0.002725"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.223918" elapsed="0.002786"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.230717" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:31.230785" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:31.226908" elapsed="0.003911"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:31.233514" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:31.230927" elapsed="0.002674"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.230901" elapsed="0.002735"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:31.233680" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:07:31.233877" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:31.233921" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:31.213068" 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-08-10T02:07:31.236075" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.234504" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.234486" elapsed="0.001656"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.236701" 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-08-10T02:07:31.236287" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.237232" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.236888" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:31.237324" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:07:31.237518" 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-08-10T02:07:31.234155" elapsed="0.003388"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:31.237695" 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-08-10T02:07:31.212509" elapsed="0.025630"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.245878" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:31.245580" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.256384" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:31.257070" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;4000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;44000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;602000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:31.257555" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:31.246033" elapsed="0.011562"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.258200" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.257830" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.261901" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;4000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;44000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;602000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;13&lt;/second&gt;&lt;nanosecond&gt;122000000&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;14&lt;/second&gt;&lt;nanosecond&gt;640000000&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;13&lt;/second&gt;&lt;nanosecond&gt;157000000&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;14&lt;/second&gt;&lt;nanosecond&gt;674000000&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;13&lt;/second&gt;&lt;nanosecond&gt;197000000&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;14&lt;/second&gt;&lt;nanosecond&gt;721000000&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;13&lt;/second&gt;&lt;nanosecond&gt;239000000&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;14&lt;/second&gt;&lt;nanosecond&gt;770000000&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&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;13&lt;/second&gt;&lt;nanosecond&gt;738000000&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;14&lt;/second&gt;&lt;nanosecond&gt;44000000&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;12&lt;/second&gt;&lt;nanosecond&gt;854000000&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;14&lt;/second&gt;&lt;nanosecond&gt;87000000&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;12&lt;/second&gt;&lt;nanosecond&gt;878000000&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;14&lt;/second&gt;&lt;nanosecond&gt;128000000&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;12&lt;/second&gt;&lt;nanosecond&gt;878000000&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;14&lt;/second&gt;&lt;nanosecond&gt;159000000&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;14&lt;/second&gt;&lt;nanosecond&gt;193000000&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;14&lt;/second&gt;&lt;nanosecond&gt;236000000&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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&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;12&lt;/second&gt;&lt;nanosecond&gt;967000000&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;14&lt;/second&gt;&lt;nanosecond&gt;317000000&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;14&lt;/second&gt;&lt;nanosecond&gt;350000000&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;13&lt;/second&gt;&lt;nanosecond&gt;346000000&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;13&lt;/second&gt;&lt;nanosecond&gt;393000000&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;13&lt;/second&gt;&lt;nanosecond&gt;885000000&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;13&lt;/second&gt;&lt;nanosecond&gt;430000000&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;12&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;468000000&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;13&lt;/second&gt;&lt;nanosecond&gt;508000000&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;13&lt;/second&gt;&lt;nanosecond&gt;546000000&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;13&lt;/second&gt;&lt;nanosecond&gt;584000000&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;12&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;620000000&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;12&lt;/second&gt;&lt;nanosecond&gt;706000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;928000000&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;13&lt;/second&gt;&lt;nanosecond&gt;658000000&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;12&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;13&lt;/second&gt;&lt;nanosecond&gt;970000000&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;13&lt;/second&gt;&lt;nanosecond&gt;698000000&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;12&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;14&lt;/second&gt;&lt;nanosecond&gt;7000000&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;12&lt;/second&gt;&lt;nanosecond&gt;823000000&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;13&lt;/second&gt;&lt;nanosecond&gt;774000000&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;13&lt;/second&gt;&lt;nanosecond&gt;804000000&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;13&lt;/second&gt;&lt;nanosecond&gt;831000000&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;13&lt;/second&gt;&lt;nanosecond&gt;307000000&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;13&lt;/second&gt;&lt;nanosecond&gt;279000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.258497" 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-08-10T02:07:31.265932" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.263445" elapsed="0.002536"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.263418" elapsed="0.002586"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.298220" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:31.298281" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:31.266141" elapsed="0.032169"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:31.300154" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:31.298421" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.298401" elapsed="0.001840"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:31.300276" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:31.300489" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:31.300532" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:31.245176" elapsed="0.055379"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:31.302711" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.301110" elapsed="0.001646"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.301092" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.303519" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.302923" elapsed="0.000624"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.304061" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.303709" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:31.304136" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:31.304312" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:31.300781" 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-08-10T02:07:31.304510" 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-08-10T02:07:31.244557" elapsed="0.060398"/>
</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-08-10T02:07:31.187899" elapsed="0.117112"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:31.181024" elapsed="0.124102"/>
</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-08-10T02:07:31.316034" 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-08-10T02:07:31.316183" 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-08-10T02:07:31.315895" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.316770" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21fdd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.316381" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.317222" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.316946" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.317724" 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-08-10T02:07:31.317442" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.318169" 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-08-10T02:07:31.317900" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.318945" 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-08-10T02:07:31.318359" elapsed="0.000616"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.319473" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.319129" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.320032" 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-08-10T02:07:31.319713" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.320563" 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-08-10T02:07:31.320222" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.321065" 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-08-10T02:07:31.320758" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.321661" 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-08-10T02:07:31.321276" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.322192" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21fdd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.321858" 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-08-10T02:07:31.315565" elapsed="0.006723"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.322833" 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-08-10T02:07:31.322456" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.323248" 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-08-10T02:07:31.323011" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.331197" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:31.330896" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.338306" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:31.338557" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:31.338665" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:31.331368" elapsed="0.007323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.339294" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.338926" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.342671" 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-08-10T02:07:31.339597" elapsed="0.003205"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:31.345541" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.342905" elapsed="0.002709"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.342877" elapsed="0.002769"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.349830" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:31.349877" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:31.345846" elapsed="0.004053"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:31.351671" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:31.349973" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.349955" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:31.351784" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:31.351975" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:31.352018" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:31.330583" elapsed="0.021457"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:31.354174" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.352594" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.352576" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.354800" 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-08-10T02:07:31.354402" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.355329" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.354986" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:31.355422" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:31.355599" 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-08-10T02:07:31.352250" 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-08-10T02:07:31.355775" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:31.330008" elapsed="0.026208"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.364143" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:31.363846" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.380133" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:31.381218" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;4000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;44000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;602000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:31.381988" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:31.364298" elapsed="0.017751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.383040" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.382458" elapsed="0.000681"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.388811" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;4000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;44000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;602000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;13&lt;/second&gt;&lt;nanosecond&gt;122000000&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;14&lt;/second&gt;&lt;nanosecond&gt;640000000&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;13&lt;/second&gt;&lt;nanosecond&gt;157000000&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;14&lt;/second&gt;&lt;nanosecond&gt;674000000&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;13&lt;/second&gt;&lt;nanosecond&gt;197000000&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;14&lt;/second&gt;&lt;nanosecond&gt;721000000&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;13&lt;/second&gt;&lt;nanosecond&gt;239000000&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;14&lt;/second&gt;&lt;nanosecond&gt;770000000&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&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;13&lt;/second&gt;&lt;nanosecond&gt;738000000&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;14&lt;/second&gt;&lt;nanosecond&gt;44000000&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;12&lt;/second&gt;&lt;nanosecond&gt;854000000&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;14&lt;/second&gt;&lt;nanosecond&gt;87000000&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;12&lt;/second&gt;&lt;nanosecond&gt;878000000&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;14&lt;/second&gt;&lt;nanosecond&gt;128000000&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;12&lt;/second&gt;&lt;nanosecond&gt;878000000&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;14&lt;/second&gt;&lt;nanosecond&gt;159000000&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;14&lt;/second&gt;&lt;nanosecond&gt;193000000&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;14&lt;/second&gt;&lt;nanosecond&gt;236000000&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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&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;12&lt;/second&gt;&lt;nanosecond&gt;967000000&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;14&lt;/second&gt;&lt;nanosecond&gt;317000000&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;14&lt;/second&gt;&lt;nanosecond&gt;350000000&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;13&lt;/second&gt;&lt;nanosecond&gt;346000000&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;13&lt;/second&gt;&lt;nanosecond&gt;393000000&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;13&lt;/second&gt;&lt;nanosecond&gt;885000000&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;13&lt;/second&gt;&lt;nanosecond&gt;430000000&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;12&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;468000000&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;13&lt;/second&gt;&lt;nanosecond&gt;508000000&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;13&lt;/second&gt;&lt;nanosecond&gt;546000000&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;13&lt;/second&gt;&lt;nanosecond&gt;584000000&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;12&lt;/second&gt;&lt;nanosecond&gt;674000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;620000000&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;12&lt;/second&gt;&lt;nanosecond&gt;706000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;928000000&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;13&lt;/second&gt;&lt;nanosecond&gt;658000000&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;12&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;13&lt;/second&gt;&lt;nanosecond&gt;970000000&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;13&lt;/second&gt;&lt;nanosecond&gt;698000000&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;12&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;14&lt;/second&gt;&lt;nanosecond&gt;7000000&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;12&lt;/second&gt;&lt;nanosecond&gt;823000000&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;13&lt;/second&gt;&lt;nanosecond&gt;774000000&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;13&lt;/second&gt;&lt;nanosecond&gt;804000000&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;13&lt;/second&gt;&lt;nanosecond&gt;831000000&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;13&lt;/second&gt;&lt;nanosecond&gt;307000000&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;13&lt;/second&gt;&lt;nanosecond&gt;279000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.383487" elapsed="0.006834"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:31.392188" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.390420" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.390398" elapsed="0.001866"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.420119" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:31.420167" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:31.392424" elapsed="0.027766"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:31.422050" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:31.420268" elapsed="0.001840"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.420249" elapsed="0.001883"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:31.422166" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:07:31.422390" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:31.422435" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:31.363471" elapsed="0.058987"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:31.424623" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:31.423035" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:31.423017" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.425248" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.424844" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.428806" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:31.425454" elapsed="0.003379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:31.428883" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:31.429061" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:31.422695" elapsed="0.006391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:31.429255" 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-08-10T02:07:31.362835" elapsed="0.066951"/>
</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-08-10T02:07:31.312289" elapsed="0.117556"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:31.305454" elapsed="0.124517"/>
</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-08-10T02:07:31.431191" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.430945" elapsed="0.000289"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:31.434684" 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-08-10T02:07:31.434835" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.434533" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.435426" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3ec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.435014" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.435889" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.435608" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.436351" 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-08-10T02:07:31.436066" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.436802" 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-08-10T02:07:31.436528" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.437612" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.436976" elapsed="0.000667"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.438166" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.437797" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.438692" 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-08-10T02:07:31.438381" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.439193" 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-08-10T02:07:31.438883" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.439703" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.439402" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.440202" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.439898" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.440728" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3ec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.440421" 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-08-10T02:07:31.434182" elapsed="0.006641"/>
</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-08-10T02:07:31.450074" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.449822" elapsed="0.000310"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.463034" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.463095" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.463197" 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-08-10T02:07:31.450261" elapsed="0.012961"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.465963" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.463404" elapsed="0.002618"/>
</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-08-10T02:07:31.449372" elapsed="0.016727"/>
</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-08-10T02:07:31.440970" elapsed="0.025202"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.430818" elapsed="0.035407"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.466900" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.466559" 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-08-10T02:07:31.471708" 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-08-10T02:07:31.471961" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.471521" elapsed="0.000493"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.472791" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.472227" elapsed="0.000604"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.473449" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.473040" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.474109" 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-08-10T02:07:31.473735" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.474742" 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-08-10T02:07:31.474374" elapsed="0.000394"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.475495" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.474914" elapsed="0.000612"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.475989" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.475679" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.476497" 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-08-10T02:07:31.476179" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.476991" 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-08-10T02:07:31.476685" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.477488" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.477178" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.478017" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.477710" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.478528" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.478209" 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-08-10T02:07:31.471038" elapsed="0.007585"/>
</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-08-10T02:07:31.485777" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:31.485515" elapsed="0.000320"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.496503" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.496602" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.496693" 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-08-10T02:07:31.485961" elapsed="0.010768"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.499865" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.496951" elapsed="0.002973"/>
</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-08-10T02:07:31.485068" elapsed="0.014934"/>
</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-08-10T02:07:31.478767" elapsed="0.021307"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.466382" elapsed="0.033745"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.500799" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.500456" elapsed="0.000404"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:31.505630" 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-08-10T02:07:31.505812" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.505407" elapsed="0.000445"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.506619" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda2890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.506068" elapsed="0.000590"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.507100" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.506829" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.507559" 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-08-10T02:07:31.507274" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.507997" 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-08-10T02:07:31.507732" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.508734" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.508168" elapsed="0.000596"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.509225" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.508914" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.509771" 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-08-10T02:07:31.509433" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.510268" 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-08-10T02:07:31.509960" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.510773" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.510475" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.511264" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.510963" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.511775" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda2890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.511472" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:31.504923" elapsed="0.006945"/>
</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-08-10T02:07:31.519106" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:31.518859" elapsed="0.000339"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.529854" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.529914" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.530002" 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-08-10T02:07:31.519325" elapsed="0.010702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.532830" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.530182" elapsed="0.002708"/>
</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-08-10T02:07:31.518427" elapsed="0.014541"/>
</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-08-10T02:07:31.512021" elapsed="0.021020"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.500259" elapsed="0.032835"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.533789" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.533427" 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-08-10T02:07:31.538624" 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-08-10T02:07:31.538788" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.538435" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.539367" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f420&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.538964" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.539818" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.539546" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.540257" 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-08-10T02:07:31.539990" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.540713" 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-08-10T02:07:31.540446" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.541493" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.540884" elapsed="0.000639"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.542026" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.541705" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.542541" 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-08-10T02:07:31.542217" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.543035" 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-08-10T02:07:31.542730" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.543539" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.543222" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.544070" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.543765" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.544586" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f420&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.544262" 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-08-10T02:07:31.537949" elapsed="0.006732"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.551852" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.551603" elapsed="0.000309"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.562753" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.562815" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.562904" 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-08-10T02:07:31.552037" elapsed="0.010891"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.566896" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.563084" elapsed="0.003906"/>
</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-08-10T02:07:31.551158" elapsed="0.015956"/>
</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-08-10T02:07:31.544830" elapsed="0.022399"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.533227" elapsed="0.034088"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.568415" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.567838" elapsed="0.000679"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:31.575448" 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-08-10T02:07:31.575573" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.575295" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.576141" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.575751" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.576643" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.576317" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.577088" 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-08-10T02:07:31.576820" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.577548" 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-08-10T02:07:31.577261" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.578368" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.577733" elapsed="0.000667"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.578866" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.578552" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.579374" 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-08-10T02:07:31.579056" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.579867" 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-08-10T02:07:31.579563" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.580363" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.580053" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.580854" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.580555" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.581410" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.581044" elapsed="0.000424"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:31.574961" elapsed="0.006582"/>
</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-08-10T02:07:31.591925" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.591659" elapsed="0.000334"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.603534" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.603640" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.603896" 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-08-10T02:07:31.592124" elapsed="0.011809"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.607363" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.604151" elapsed="0.003312"/>
</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-08-10T02:07:31.591197" elapsed="0.016391"/>
</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-08-10T02:07:31.584765" elapsed="0.022940"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.567563" elapsed="0.040228"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.608862" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.608289" elapsed="0.000670"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:31.615614" 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-08-10T02:07:31.615763" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.615477" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.616385" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21ed90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.615941" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.616838" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.616564" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.617277" 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-08-10T02:07:31.617011" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.617748" 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-08-10T02:07:31.617468" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.618569" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.617926" elapsed="0.000674"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.619067" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.618753" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.619575" 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-08-10T02:07:31.619255" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.620073" 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-08-10T02:07:31.619768" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.620574" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.620258" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.621065" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.620763" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.621654" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21ed90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.621255" elapsed="0.000441"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:31.615131" elapsed="0.006664"/>
</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-08-10T02:07:31.628951" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.628703" elapsed="0.000343"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.641586" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.641648" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.641779" 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-08-10T02:07:31.629173" elapsed="0.012665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.646814" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.642184" elapsed="0.004725"/>
</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-08-10T02:07:31.628258" elapsed="0.018775"/>
</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-08-10T02:07:31.621944" elapsed="0.025206"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.608009" elapsed="0.039227"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.648299" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.647764" 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-08-10T02:07:31.653102" 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-08-10T02:07:31.653227" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.652970" elapsed="0.000285"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.653851" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.653419" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.654305" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.654030" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.654770" 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-08-10T02:07:31.654498" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.655207" 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-08-10T02:07:31.654942" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.656081" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.655395" elapsed="0.000717"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.656595" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.656263" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.657087" 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-08-10T02:07:31.656786" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.657603" 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-08-10T02:07:31.657276" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.658118" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.657818" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.658682" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.658375" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.659179" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.658875" 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-08-10T02:07:31.652641" elapsed="0.006634"/>
</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-08-10T02:07:31.666576" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.666308" elapsed="0.000329"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.676287" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.676408" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.676536" 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-08-10T02:07:31.666764" elapsed="0.009809"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.679667" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.676794" elapsed="0.002934"/>
</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-08-10T02:07:31.665873" elapsed="0.013934"/>
</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-08-10T02:07:31.659437" elapsed="0.020445"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.647486" elapsed="0.032450"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.680611" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.680243" 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-08-10T02:07:31.685437" 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-08-10T02:07:31.685613" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.685227" elapsed="0.000472"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.686560" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.685948" elapsed="0.000652"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.687229" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.686824" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.687936" 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-08-10T02:07:31.687514" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.688583" 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-08-10T02:07:31.688180" elapsed="0.000440"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.689899" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.688829" elapsed="0.001113"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.690620" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.690156" elapsed="0.000522"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.691152" 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-08-10T02:07:31.690847" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.691664" 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-08-10T02:07:31.691355" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.692146" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.691851" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.692692" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.692351" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.693200" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.692895" 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-08-10T02:07:31.684770" elapsed="0.008525"/>
</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-08-10T02:07:31.700463" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.700197" elapsed="0.000330"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.708853" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.708952" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.709043" 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-08-10T02:07:31.700653" elapsed="0.008416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.712042" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.709224" elapsed="0.002888"/>
</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-08-10T02:07:31.699767" elapsed="0.012430"/>
</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-08-10T02:07:31.693457" elapsed="0.018819"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.680069" elapsed="0.032290"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.713044" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.712692" elapsed="0.000413"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:31.718075" 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-08-10T02:07:31.718267" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.717877" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.719011" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.718548" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.719478" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.719187" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.719918" 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-08-10T02:07:31.719653" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.720374" 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-08-10T02:07:31.720092" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.721258" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.720548" elapsed="0.000740"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.721769" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.721457" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.722289" 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-08-10T02:07:31.721982" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.722835" 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-08-10T02:07:31.722520" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.723356" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.723038" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.723852" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.723549" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.724359" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.724042" 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-08-10T02:07:31.717366" elapsed="0.007089"/>
</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-08-10T02:07:31.734959" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.734701" elapsed="0.000364"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.748403" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.748551" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.748747" 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-08-10T02:07:31.735193" elapsed="0.013610"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.753890" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.749148" elapsed="0.004840"/>
</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-08-10T02:07:31.734180" elapsed="0.019935"/>
</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-08-10T02:07:31.724600" elapsed="0.029632"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.712505" elapsed="0.041812"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.755439" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.754861" elapsed="0.000677"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:31.760729" 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-08-10T02:07:31.760857" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.760595" elapsed="0.000290"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.761473" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef8d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.761034" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.762005" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.761682" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.762499" 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-08-10T02:07:31.762193" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.762974" 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-08-10T02:07:31.762684" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.763924" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.763156" elapsed="0.000800"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.764470" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.764118" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.764993" 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-08-10T02:07:31.764671" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.765568" 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-08-10T02:07:31.765213" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.766141" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.765796" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.766660" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.766354" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.767156" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef8d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.766852" 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-08-10T02:07:31.760249" elapsed="0.007005"/>
</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-08-10T02:07:31.774491" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.774222" elapsed="0.000333"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.785229" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.785295" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.785408" 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-08-10T02:07:31.774681" elapsed="0.010753"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.790108" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.785591" elapsed="0.004618"/>
</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-08-10T02:07:31.773762" elapsed="0.016613"/>
</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-08-10T02:07:31.767416" elapsed="0.023085"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.754582" elapsed="0.036006"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.791776" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.791176" 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-08-10T02:07:31.796898" 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-08-10T02:07:31.797035" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.796762" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.797642" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.797210" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.798137" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.797820" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.798598" 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-08-10T02:07:31.798313" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.799035" 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-08-10T02:07:31.798771" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.799946" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.799205" elapsed="0.000772"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.800464" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.800133" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.800961" 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-08-10T02:07:31.800657" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.801475" 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-08-10T02:07:31.801151" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.801988" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.801663" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.802513" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.802189" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.803008" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.802705" 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-08-10T02:07:31.796422" elapsed="0.006681"/>
</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-08-10T02:07:31.810315" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.810065" elapsed="0.000332"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.823880" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.824096" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.824303" 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-08-10T02:07:31.810525" elapsed="0.013876"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.828403" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.824754" elapsed="0.003710"/>
</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-08-10T02:07:31.809601" elapsed="0.018942"/>
</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-08-10T02:07:31.803249" elapsed="0.025368"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.790883" elapsed="0.037788"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.829323" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.828980" 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-08-10T02:07:31.834307" 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-08-10T02:07:31.834512" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.834119" elapsed="0.000434"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.835163" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.834755" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.835637" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.835362" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.836078" 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-08-10T02:07:31.835812" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.836543" 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-08-10T02:07:31.836251" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.837433" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.836716" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.837934" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.837617" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.838461" 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-08-10T02:07:31.838139" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.838961" 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-08-10T02:07:31.838653" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.839462" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.839149" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.839959" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.839656" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.840479" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.840152" 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-08-10T02:07:31.833600" elapsed="0.006974"/>
</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-08-10T02:07:31.847790" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.847533" elapsed="0.000358"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.857890" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.858002" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.858127" 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-08-10T02:07:31.848021" elapsed="0.010141"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.861268" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.858412" elapsed="0.002915"/>
</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-08-10T02:07:31.847078" elapsed="0.014354"/>
</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-08-10T02:07:31.840719" elapsed="0.020787"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.828805" elapsed="0.032756"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.862270" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.861871" elapsed="0.000483"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:31.867011" 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-08-10T02:07:31.867137" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:31.866878" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.867737" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e64d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.867320" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.868187" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.867914" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.868649" 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-08-10T02:07:31.868380" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.869110" 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-08-10T02:07:31.868824" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.869969" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:31.869285" elapsed="0.000736"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.870514" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.870179" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.871010" 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-08-10T02:07:31.870707" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.871524" 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-08-10T02:07:31.871198" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.872054" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.871752" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.872571" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.872247" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.873117" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e64d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.872770" 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-08-10T02:07:31.866472" elapsed="0.006744"/>
</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-08-10T02:07:31.880429" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:31.880158" elapsed="0.000333"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.890106" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.890169" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.890258" 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-08-10T02:07:31.880618" elapsed="0.009666"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.899052" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.890464" elapsed="0.008633"/>
</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-08-10T02:07:31.879728" elapsed="0.019429"/>
</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-08-10T02:07:31.873383" elapsed="0.025827"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.861696" elapsed="0.037554"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.899751" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.899493" elapsed="0.000302"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:31.903186" 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-08-10T02:07:31.903364" 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-08-10T02:07:31.903052" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.903946" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6cf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.903545" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.904417" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.904124" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.904861" 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-08-10T02:07:31.904593" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.905300" 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-08-10T02:07:31.905034" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.906158" 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-08-10T02:07:31.905489" elapsed="0.000700"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.906676" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.906359" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.907172" 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-08-10T02:07:31.906869" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.907685" 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-08-10T02:07:31.907376" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.908174" 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-08-10T02:07:31.907879" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.908686" 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-08-10T02:07:31.908383" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.909182" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6cf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.908879" 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-08-10T02:07:31.902720" elapsed="0.006558"/>
</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-08-10T02:07:31.916477" 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-08-10T02:07:31.916209" elapsed="0.000330"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.928227" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.928396" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.928530" 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-08-10T02:07:31.916666" elapsed="0.011900"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.932297" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.928792" elapsed="0.003637"/>
</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-08-10T02:07:31.915777" elapsed="0.016781"/>
</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-08-10T02:07:31.909441" elapsed="0.023234"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.899365" elapsed="0.033396"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.933851" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.933264" elapsed="0.000685"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:31.940074" 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-08-10T02:07:31.940204" 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-08-10T02:07:31.939939" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.940798" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec0e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.940401" elapsed="0.000425"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.941248" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.940976" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.941705" 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-08-10T02:07:31.941439" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.942189" 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-08-10T02:07:31.941883" elapsed="0.000332"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.943148" 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-08-10T02:07:31.942384" elapsed="0.000794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.943661" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.943346" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.944154" 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-08-10T02:07:31.943853" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.944668" 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-08-10T02:07:31.944359" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.945150" 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-08-10T02:07:31.944856" elapsed="0.000338"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.945661" 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-08-10T02:07:31.945358" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.946182" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec0e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.945852" 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-08-10T02:07:31.939605" elapsed="0.006673"/>
</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-08-10T02:07:31.953450" 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-08-10T02:07:31.953182" elapsed="0.000368"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:31.966536" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:31.966677" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:31.966873" 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-08-10T02:07:31.953679" elapsed="0.013250"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.971491" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.967277" elapsed="0.004275"/>
</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-08-10T02:07:31.952753" elapsed="0.018878"/>
</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-08-10T02:07:31.946442" elapsed="0.025263"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.932978" elapsed="0.038781"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.972436" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:31.972067" 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-08-10T02:07:31.977314" 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-08-10T02:07:31.977514" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:31.977127" elapsed="0.000427"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:31.978362" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6e80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:31.977761" elapsed="0.000642"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.978935" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:31.978613" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.979392" 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-08-10T02:07:31.979108" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:31.979835" 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-08-10T02:07:31.979566" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:31.980577" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:31.980007" elapsed="0.000601"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.981071" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.980760" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.981583" 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-08-10T02:07:31.981262" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.982079" 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-08-10T02:07:31.981772" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.982600" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:31.982283" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.983130" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:31.982828" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:31.983654" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6e80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:31.983330" 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-08-10T02:07:31.976662" elapsed="0.007086"/>
</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-08-10T02:07:31.990946" level="INFO">&lt;?xml version="1.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-08-10T02:07:31.990696" elapsed="0.000308"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.001546" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.001613" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.001716" 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-08-10T02:07:31.991129" elapsed="0.010614"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.005758" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.001922" elapsed="0.003934"/>
</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-08-10T02:07:31.990244" elapsed="0.015742"/>
</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-08-10T02:07:31.983899" elapsed="0.022208"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-08-10T02:07:31.971891" elapsed="0.034358"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.007388" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.006808" 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-08-10T02:07:32.012753" 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-08-10T02:07:32.012898" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.012614" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.013484" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.013074" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.013940" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.013661" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.014464" 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-08-10T02:07:32.014170" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.014911" 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-08-10T02:07:32.014638" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.015657" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.015084" elapsed="0.000604"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.016159" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.015843" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.016670" 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-08-10T02:07:32.016366" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.017166" 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-08-10T02:07:32.016860" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.017669" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.017371" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.018191" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.017866" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.018725" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.018408" 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-08-10T02:07:32.012260" elapsed="0.006583"/>
</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-08-10T02:07:32.026075" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.025823" elapsed="0.000309"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.041812" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.041940" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.042136" 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-08-10T02:07:32.026285" elapsed="0.016045"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.047221" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.042746" elapsed="0.004536"/>
</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-08-10T02:07:32.025391" elapsed="0.021996"/>
</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-08-10T02:07:32.019013" elapsed="0.028449"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.006522" elapsed="0.041038"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.048213" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.047873" elapsed="0.000401"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.053011" 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-08-10T02:07:32.053184" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.052827" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.053983" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e42c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.053456" elapsed="0.000566"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.056529" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.056222" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.056974" 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-08-10T02:07:32.056707" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.057437" 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-08-10T02:07:32.057147" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.058142" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.057608" elapsed="0.000565"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.058701" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.058386" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.059197" 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-08-10T02:07:32.058896" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.059708" 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-08-10T02:07:32.059400" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.060189" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.059894" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.060699" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.060397" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.061198" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e42c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.060890" 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-08-10T02:07:32.052369" elapsed="0.008923"/>
</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-08-10T02:07:32.068497" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.068229" elapsed="0.000324"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.079031" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.079156" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.079251" 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-08-10T02:07:32.068678" elapsed="0.010599"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.081505" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.079456" elapsed="0.002093"/>
</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-08-10T02:07:32.067786" elapsed="0.013818"/>
</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-08-10T02:07:32.061453" elapsed="0.020204"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.047699" elapsed="0.033996"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.082161" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.081917" 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-08-10T02:07:32.085644" 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-08-10T02:07:32.085794" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.085509" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.086411" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee5319e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.085971" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.086869" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.086595" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.087311" 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-08-10T02:07:32.087043" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.087773" 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-08-10T02:07:32.087504" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.088638" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.087945" elapsed="0.000731"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.089142" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.088830" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.089654" 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-08-10T02:07:32.089349" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.090150" 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-08-10T02:07:32.089843" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.090687" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.090388" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.091181" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.090880" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.091694" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee5319e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.091390" 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-08-10T02:07:32.085160" elapsed="0.006629"/>
</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-08-10T02:07:32.098987" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.098738" elapsed="0.000352"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.109039" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.109209" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.109500" 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-08-10T02:07:32.099218" elapsed="0.010343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.114620" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.109912" elapsed="0.004804"/>
</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-08-10T02:07:32.098291" elapsed="0.016553"/>
</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-08-10T02:07:32.091934" elapsed="0.023029"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.081791" elapsed="0.033257"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.116130" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.115585" elapsed="0.000641"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.121094" 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-08-10T02:07:32.121219" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.120960" elapsed="0.000288"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.121817" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3957b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.121413" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.122279" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.121995" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.122739" 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-08-10T02:07:32.122471" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.123177" 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-08-10T02:07:32.122911" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.124067" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.123365" elapsed="0.000733"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.124597" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.124261" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.125093" 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-08-10T02:07:32.124788" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.125614" 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-08-10T02:07:32.125286" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.126143" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.125839" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.126723" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.126413" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.127229" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3957b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.126918" 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-08-10T02:07:32.120631" elapsed="0.006694"/>
</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-08-10T02:07:32.134586" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.134310" elapsed="0.000338"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.148235" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.148421" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.148623" 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-08-10T02:07:32.134774" elapsed="0.013905"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.153682" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.149029" elapsed="0.004747"/>
</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-08-10T02:07:32.133842" elapsed="0.020060"/>
</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-08-10T02:07:32.127490" elapsed="0.026530"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.115262" elapsed="0.038845"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.155099" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.154696" elapsed="0.000465"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.159923" 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-08-10T02:07:32.160139" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.159735" elapsed="0.000446"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.160983" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f0b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.160412" elapsed="0.000609"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.161642" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.161229" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.162260" 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-08-10T02:07:32.161886" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.162958" 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-08-10T02:07:32.162584" elapsed="0.000399"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.163846" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.163129" elapsed="0.000747"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.164359" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.164029" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.164861" 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-08-10T02:07:32.164555" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.165385" 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-08-10T02:07:32.165060" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.165875" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.165576" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.166400" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.166067" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.166905" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f0b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.166598" 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-08-10T02:07:32.159253" elapsed="0.007749"/>
</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-08-10T02:07:32.174224" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.173960" elapsed="0.000327"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.185055" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.185206" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.185365" 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-08-10T02:07:32.174444" elapsed="0.010961"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.189516" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.185626" elapsed="0.003987"/>
</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-08-10T02:07:32.173526" 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-08-10T02:07:32.167146" elapsed="0.022709"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.154412" elapsed="0.035527"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.191031" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.190486" elapsed="0.000641"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.196675" 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-08-10T02:07:32.196802" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.196540" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.197378" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.196978" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.197831" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.197555" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.198268" 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-08-10T02:07:32.198005" elapsed="0.000288"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.198742" 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-08-10T02:07:32.198469" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.199449" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.198911" elapsed="0.000568"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.199940" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.199630" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.200450" 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-08-10T02:07:32.200129" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.200949" 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-08-10T02:07:32.200639" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.201449" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.201136" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.201942" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.201641" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.202475" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.202132" 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-08-10T02:07:32.196190" elapsed="0.006381"/>
</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-08-10T02:07:32.209808" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.209547" elapsed="0.000390"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.221165" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.221224" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.221316" 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-08-10T02:07:32.210072" elapsed="0.011291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.225889" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.221522" elapsed="0.004461"/>
</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-08-10T02:07:32.209063" elapsed="0.017046"/>
</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-08-10T02:07:32.202717" elapsed="0.023510"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.190153" elapsed="0.036161"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.227497" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.226909" 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-08-10T02:07:32.232922" 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-08-10T02:07:32.233059" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.232782" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.233678" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.233237" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.234130" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.233856" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.234601" 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-08-10T02:07:32.234304" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.235041" 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-08-10T02:07:32.234775" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.235973" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.235214" elapsed="0.000790"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.236497" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.236158" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.236995" 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-08-10T02:07:32.236690" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.237523" 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-08-10T02:07:32.237184" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.238012" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.237713" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.238556" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.238205" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.239117" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee533970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.238808" 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-08-10T02:07:32.232445" elapsed="0.006767"/>
</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-08-10T02:07:32.246571" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.246264" elapsed="0.000371"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.256893" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.256958" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.257047" 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-08-10T02:07:32.246767" elapsed="0.010306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.261315" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.257232" elapsed="0.004216"/>
</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-08-10T02:07:32.245827" elapsed="0.015747"/>
</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-08-10T02:07:32.239376" elapsed="0.022315"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.226626" elapsed="0.035154"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.262889" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.262274" 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-08-10T02:07:32.268635" 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-08-10T02:07:32.268764" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:32.268500" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.269381" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda39c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.268974" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.269837" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.269562" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.270287" 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-08-10T02:07:32.270012" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.270765" 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-08-10T02:07:32.270494" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.271567" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:32.270939" elapsed="0.000659"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.272065" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.271752" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.272583" 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-08-10T02:07:32.272257" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.273079" 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-08-10T02:07:32.272772" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.273584" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.273269" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.274077" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.273776" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.274645" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda39c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.274270" elapsed="0.000417"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:32.268150" elapsed="0.006591"/>
</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-08-10T02:07:32.281950" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:32.281699" elapsed="0.000311"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.292556" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.292650" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.292753" 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-08-10T02:07:32.282136" elapsed="0.010672"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.298203" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.293191" elapsed="0.005115"/>
</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-08-10T02:07:32.281250" elapsed="0.017250"/>
</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-08-10T02:07:32.274888" elapsed="0.023744"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.261994" elapsed="0.036733"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.299886" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.299259" 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-08-10T02:07:32.305105" 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-08-10T02:07:32.305236" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:32.304970" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.305836" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bf10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.305438" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.306286" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.306015" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.306780" 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-08-10T02:07:32.306507" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.307221" 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-08-10T02:07:32.306955" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.307996" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:32.307418" elapsed="0.000608"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.308515" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.308182" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.309011" 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-08-10T02:07:32.308708" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.309528" 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-08-10T02:07:32.309200" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.310017" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.309719" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.310559" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.310211" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.311064" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bf10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.310758" 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-08-10T02:07:32.304635" elapsed="0.006524"/>
</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-08-10T02:07:32.318358" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:32.318094" elapsed="0.000389"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.338232" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.338414" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.338668" 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-08-10T02:07:32.318614" elapsed="0.020114"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.345491" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.339080" elapsed="0.006507"/>
</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-08-10T02:07:32.317658" elapsed="0.028056"/>
</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-08-10T02:07:32.311305" elapsed="0.034527"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.298958" elapsed="0.046959"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.346994" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.346450" elapsed="0.000588"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.350524" 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-08-10T02:07:32.350654" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:32.350376" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.351221" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.350831" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.351693" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.351418" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.352136" 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-08-10T02:07:32.351870" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.352597" 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-08-10T02:07:32.352310" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.353390" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:32.352774" elapsed="0.000646"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.353888" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.353572" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.354408" 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-08-10T02:07:32.354085" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.354955" 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-08-10T02:07:32.354639" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.355468" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:32.355145" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.356003" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:32.355698" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.356517" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.356195" 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-08-10T02:07:32.350020" elapsed="0.006592"/>
</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-08-10T02:07:32.363792" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:32.363544" elapsed="0.000307"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.376522" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.376606" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.376732" 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-08-10T02:07:32.363977" elapsed="0.012791"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.379961" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.376990" elapsed="0.003068"/>
</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-08-10T02:07:32.363074" elapsed="0.017113"/>
</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-08-10T02:07:32.356759" elapsed="0.023548"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.346134" elapsed="0.034298"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.381562" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.380972" 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-08-10T02:07:32.388545" 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-08-10T02:07:32.388676" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:32.388408" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.389251" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.388855" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.389725" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.389449" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.390207" 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-08-10T02:07:32.389935" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.390693" 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-08-10T02:07:32.390407" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.391533" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:32.390871" elapsed="0.000692"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.392030" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.391717" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.392543" 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-08-10T02:07:32.392220" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.393036" 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-08-10T02:07:32.392730" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.393539" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.393223" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.394029" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.393729" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.394571" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.394222" 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-08-10T02:07:32.388056" elapsed="0.006614"/>
</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-08-10T02:07:32.401800" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:32.401553" elapsed="0.000309"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.416629" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.416702" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.416847" 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-08-10T02:07:32.401987" elapsed="0.014928"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.422205" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.417427" elapsed="0.004874"/>
</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-08-10T02:07:32.401108" elapsed="0.021361"/>
</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-08-10T02:07:32.394815" elapsed="0.027800"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.380652" elapsed="0.042053"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.423808" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.423218" 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-08-10T02:07:32.429504" 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-08-10T02:07:32.429646" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:32.429361" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.430223" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3690d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.429825" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.430710" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.430419" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.431153" 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-08-10T02:07:32.430887" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.431611" 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-08-10T02:07:32.431328" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.432410" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:32.431788" elapsed="0.000653"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.432917" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.432598" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.433430" 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-08-10T02:07:32.433109" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.433928" 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-08-10T02:07:32.433621" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.434432" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:32.434117" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.434980" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:32.434669" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.435515" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3690d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.435175" 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-08-10T02:07:32.429006" elapsed="0.006604"/>
</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-08-10T02:07:32.442828" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&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-08-10T02:07:32.442549" elapsed="0.000373"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.457326" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.457509" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.457708" 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-08-10T02:07:32.443053" elapsed="0.014712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.462816" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.458115" elapsed="0.004798"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-08-10T02:07:32.442102" elapsed="0.020936"/>
</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-08-10T02:07:32.435756" elapsed="0.027400"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.422928" elapsed="0.040315"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.464322" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.463776" elapsed="0.000684"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.469715" 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-08-10T02:07:32.469849" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.469581" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.470453" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c0e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.470029" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.470916" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.470643" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.471380" 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-08-10T02:07:32.471098" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.471822" 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-08-10T02:07:32.471555" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.472711" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.471995" elapsed="0.000749"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.473212" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.472901" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.473722" 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-08-10T02:07:32.473418" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.474218" 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-08-10T02:07:32.473911" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.474748" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.474422" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.475283" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.474978" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.475807" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c0e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.475503" 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-08-10T02:07:32.469229" elapsed="0.006674"/>
</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-08-10T02:07:32.483107" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.482857" elapsed="0.000312"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.495417" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.495481" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.495571" 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-08-10T02:07:32.483297" elapsed="0.012299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.500437" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.495754" elapsed="0.004780"/>
</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-08-10T02:07:32.482379" elapsed="0.018281"/>
</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-08-10T02:07:32.476047" elapsed="0.024731"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.463496" elapsed="0.037369"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.501948" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.501393" elapsed="0.000652"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.506415" 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-08-10T02:07:32.506542" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.506265" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.507177" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.506765" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.507647" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.507373" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.508093" 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-08-10T02:07:32.507828" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.508555" 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-08-10T02:07:32.508268" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.509461" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.508727" elapsed="0.000764"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.509957" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.509644" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.510468" 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-08-10T02:07:32.510148" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.510998" 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-08-10T02:07:32.510684" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.511503" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.511188" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.512016" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.511697" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.512538" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.512212" 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-08-10T02:07:32.505936" elapsed="0.006698"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.519868" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.519615" elapsed="0.000316"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.536300" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.536576" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.536784" 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-08-10T02:07:32.520057" elapsed="0.016784"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.541870" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.537189" elapsed="0.004776"/>
</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-08-10T02:07:32.519165" elapsed="0.022930"/>
</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-08-10T02:07:32.512779" elapsed="0.029432"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.501078" elapsed="0.041221"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.543467" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.542884" 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-08-10T02:07:32.547109" 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-08-10T02:07:32.547236" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.546975" elapsed="0.000290"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.547844" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.547431" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.548291" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.548020" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.548757" 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-08-10T02:07:32.548489" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.549199" 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-08-10T02:07:32.548934" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.550104" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.549387" elapsed="0.000747"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.550621" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.550288" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.551158" 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-08-10T02:07:32.550849" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.551675" 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-08-10T02:07:32.551365" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.552158" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.551863" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.552670" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.552367" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.553162" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.552861" elapsed="0.000342"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:32.546617" elapsed="0.006640"/>
</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-08-10T02:07:32.560634" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.560382" elapsed="0.000355"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.571891" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.571982" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.572107" 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-08-10T02:07:32.560870" elapsed="0.011273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.575286" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.572391" elapsed="0.002977"/>
</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-08-10T02:07:32.559934" elapsed="0.015515"/>
</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-08-10T02:07:32.553418" elapsed="0.022105"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.542552" elapsed="0.033023"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.576225" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.575884" 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-08-10T02:07:32.581127" 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-08-10T02:07:32.581303" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.580941" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.582152" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3f60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.581579" elapsed="0.000613"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.582829" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.582426" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.583479" 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-08-10T02:07:32.583073" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.584096" 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-08-10T02:07:32.583722" elapsed="0.000410"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.585327" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.584359" elapsed="0.001034"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.586045" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.585608" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.586798" 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-08-10T02:07:32.586312" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.587523" 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-08-10T02:07:32.587065" elapsed="0.000516"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.588128" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.587825" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.588645" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.588321" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.589141" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3f60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.588838" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:32.580480" elapsed="0.008756"/>
</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-08-10T02:07:32.596483" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.596213" elapsed="0.000332"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.607148" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.607211" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.607299" 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-08-10T02:07:32.596672" elapsed="0.010653"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.611934" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.607509" elapsed="0.004522"/>
</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-08-10T02:07:32.595777" elapsed="0.016385"/>
</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-08-10T02:07:32.589399" elapsed="0.022881"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.575708" elapsed="0.036701"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.613498" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.612912" elapsed="0.000685"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.620497" 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-08-10T02:07:32.620623" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.620313" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.621209" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395fd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.620801" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.621680" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.621404" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.622136" 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-08-10T02:07:32.621861" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.622605" 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-08-10T02:07:32.622314" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.623540" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.622794" elapsed="0.000776"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.624053" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.623731" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.624572" 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-08-10T02:07:32.624248" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.625070" 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-08-10T02:07:32.624763" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.625579" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.625261" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.626078" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.625777" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.626596" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395fd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.626273" 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-08-10T02:07:32.619983" elapsed="0.006711"/>
</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-08-10T02:07:32.633917" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.633666" elapsed="0.000313"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.644398" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.644504" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.644596" 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-08-10T02:07:32.634108" elapsed="0.010514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.649538" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.644852" elapsed="0.004783"/>
</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-08-10T02:07:32.633216" elapsed="0.016544"/>
</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-08-10T02:07:32.626890" elapsed="0.022989"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.612628" elapsed="0.037338"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.651074" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.650503" elapsed="0.000669"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.657140" 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-08-10T02:07:32.657286" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.657003" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.657911" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e61b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.657484" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.658380" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.658088" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.658850" 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-08-10T02:07:32.658556" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.659302" 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-08-10T02:07:32.659032" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.660185" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.659494" elapsed="0.000721"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.660701" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.660388" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.661194" 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-08-10T02:07:32.660893" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.661711" 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-08-10T02:07:32.661401" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.662199" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.661902" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.662713" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.662409" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.663373" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e61b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.662979" 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-08-10T02:07:32.656672" elapsed="0.006800"/>
</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-08-10T02:07:32.670659" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.670409" elapsed="0.000372"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.684670" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.684745" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.684946" 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-08-10T02:07:32.670938" elapsed="0.014065"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.690200" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.685407" elapsed="0.004888"/>
</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-08-10T02:07:32.669944" elapsed="0.020515"/>
</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-08-10T02:07:32.663619" elapsed="0.026961"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.650185" elapsed="0.040482"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.691806" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.691211" elapsed="0.000694"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.697511" 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-08-10T02:07:32.697638" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.697375" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.698232" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e59e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.697816" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.698698" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.698425" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.699151" 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-08-10T02:07:32.698883" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.699605" 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-08-10T02:07:32.699322" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.700533" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.699777" elapsed="0.000787"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.701032" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.700717" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.701550" 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-08-10T02:07:32.701225" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.702051" 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-08-10T02:07:32.701742" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.702601" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.702279" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.703137" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.702799" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.703653" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e59e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.703330" 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-08-10T02:07:32.697028" elapsed="0.006720"/>
</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-08-10T02:07:32.710955" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.710676" elapsed="0.000344"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.726529" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.726673" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.726873" 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-08-10T02:07:32.711146" elapsed="0.015815"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.732003" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.727311" elapsed="0.004787"/>
</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-08-10T02:07:32.710227" elapsed="0.021999"/>
</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-08-10T02:07:32.703895" elapsed="0.028481"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.690919" elapsed="0.041548"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.733753" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.733022" elapsed="0.000848"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.739240" 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-08-10T02:07:32.739413" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.739070" elapsed="0.000376"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.740111" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe14180&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.739618" elapsed="0.000523"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.740680" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.740323" elapsed="0.000387"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.741193" 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-08-10T02:07:32.740890" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.741748" 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-08-10T02:07:32.741433" elapsed="0.000344"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.742894" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.741968" elapsed="0.000993"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.743489" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.743143" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.744021" 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-08-10T02:07:32.743687" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.744535" 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-08-10T02:07:32.744209" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.745021" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.744726" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.745533" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.745213" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.746034" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe14180&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.745727" 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-08-10T02:07:32.738649" elapsed="0.007479"/>
</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-08-10T02:07:32.753319" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.753070" elapsed="0.000332"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.764042" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.764185" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.764319" 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-08-10T02:07:32.753528" elapsed="0.010863"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.767713" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.764624" elapsed="0.003149"/>
</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-08-10T02:07:32.752639" elapsed="0.015213"/>
</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-08-10T02:07:32.746274" elapsed="0.021652"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.732682" elapsed="0.035299"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.768658" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.768291" 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-08-10T02:07:32.773503" 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-08-10T02:07:32.773679" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.773291" elapsed="0.000429"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.774583" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe15620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.773945" elapsed="0.000680"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.775293" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.774846" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.775890" 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-08-10T02:07:32.775579" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.776329" 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-08-10T02:07:32.776063" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.777259" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.776519" elapsed="0.000770"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.777777" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.777462" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.778275" 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-08-10T02:07:32.777973" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.778797" 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-08-10T02:07:32.778483" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.779303" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.779004" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.779818" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.779515" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.780314" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe15620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.780011" 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-08-10T02:07:32.772828" elapsed="0.007600"/>
</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-08-10T02:07:32.787655" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.787404" elapsed="0.000350"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.798216" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.798307" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.798463" 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-08-10T02:07:32.787881" elapsed="0.010617"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.802802" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.798717" elapsed="0.004146"/>
</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-08-10T02:07:32.786928" elapsed="0.016014"/>
</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-08-10T02:07:32.780574" elapsed="0.022503"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.768116" elapsed="0.035018"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.803814" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.803469" 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-08-10T02:07:32.808675" 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-08-10T02:07:32.808862" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.808479" elapsed="0.000423"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.809689" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe15cb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.809108" elapsed="0.000619"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.810325" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.809937" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.811005" 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-08-10T02:07:32.810593" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.811684" 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-08-10T02:07:32.811257" elapsed="0.000462"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.812551" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.811880" elapsed="0.000701"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.813049" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.812734" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.813568" 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-08-10T02:07:32.813241" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.814071" 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-08-10T02:07:32.813762" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.814612" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.814294" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.815120" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.814804" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.815635" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe15cb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.815312" 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-08-10T02:07:32.807969" elapsed="0.007761"/>
</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-08-10T02:07:32.822923" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.822670" elapsed="0.000325"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.833044" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.833138" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.833276" 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-08-10T02:07:32.823125" elapsed="0.010187"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.837446" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.833588" elapsed="0.003953"/>
</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-08-10T02:07:32.822223" elapsed="0.015447"/>
</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-08-10T02:07:32.815879" elapsed="0.021909"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.803268" elapsed="0.034608"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.838959" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.838414" 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-08-10T02:07:32.845146" 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-08-10T02:07:32.845320" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.845009" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.845945" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e44a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.845516" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.846414" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.846121" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.846853" 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-08-10T02:07:32.846589" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.847311" 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-08-10T02:07:32.847041" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.848239" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.847501" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.848770" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.848441" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.849265" 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-08-10T02:07:32.848961" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.849783" 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-08-10T02:07:32.849473" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.850270" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.849972" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.850785" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:32.850481" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.851327" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e44a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.850976" 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-08-10T02:07:32.844666" elapsed="0.006776"/>
</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-08-10T02:07:32.858608" level="INFO">&lt;?xml version="1.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-08-10T02:07:32.858356" elapsed="0.000317"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.869781" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.869999" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.870201" 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-08-10T02:07:32.858800" elapsed="0.011471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.875436" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.870656" elapsed="0.004879"/>
</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-08-10T02:07:32.857908" elapsed="0.017752"/>
</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-08-10T02:07:32.851587" elapsed="0.024177"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.838098" elapsed="0.037720"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.876491" level="INFO">f156.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.876128" 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-08-10T02:07:32.881280" 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-08-10T02:07:32.881479" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:32.881093" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.882275" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbefe20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.881725" elapsed="0.000589"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.882929" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.882548" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.883639" 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-08-10T02:07:32.883228" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.884114" 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-08-10T02:07:32.883843" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.884970" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:32.884288" elapsed="0.000712"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.885485" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.885153" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.885985" 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-08-10T02:07:32.885676" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.886500" 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-08-10T02:07:32.886174" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.886987" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.886689" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.892094" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.891783" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.892611" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbefe20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.892287" 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-08-10T02:07:32.880635" elapsed="0.012071"/>
</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-08-10T02:07:32.899925" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:32.899674" elapsed="0.000353"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.911394" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.911538" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.911738" 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-08-10T02:07:32.900157" elapsed="0.011640"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.916846" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.912146" elapsed="0.004795"/>
</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-08-10T02:07:32.899220" elapsed="0.017845"/>
</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-08-10T02:07:32.892851" elapsed="0.024333"/>
</kw>
<var name="${flowfile}">f156.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.875952" elapsed="0.041319"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.918377" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.917803" elapsed="0.000676"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.922579" 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-08-10T02:07:32.922709" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:32.922444" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.923305" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e70b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.922886" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.923781" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.923502" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.924222" 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-08-10T02:07:32.923956" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.924682" 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-08-10T02:07:32.924413" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.925543" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.924856" elapsed="0.000717"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.926037" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.925727" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.926549" 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-08-10T02:07:32.926227" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.927051" 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-08-10T02:07:32.926743" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.927622" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:32.927267" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.928122" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.927818" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.928639" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e70b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.928315" 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-08-10T02:07:32.922096" elapsed="0.006639"/>
</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-08-10T02:07:32.935919" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:32.935670" elapsed="0.000310"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.946306" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.946392" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.946482" 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-08-10T02:07:32.936107" elapsed="0.010400"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.951259" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.946665" elapsed="0.004722"/>
</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-08-10T02:07:32.935220" elapsed="0.016294"/>
</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-08-10T02:07:32.928887" elapsed="0.022743"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.917520" elapsed="0.034196"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.952792" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.952208" 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-08-10T02:07:32.957923" 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-08-10T02:07:32.958082" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:32.957785" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.958686" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397ab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.958261" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.959162" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.958870" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.959629" 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-08-10T02:07:32.959359" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.960073" 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-08-10T02:07:32.959806" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.960975" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.960245" elapsed="0.000761"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.961496" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.961162" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.961997" 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-08-10T02:07:32.961688" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.962511" 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-08-10T02:07:32.962186" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.962997" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:32.962700" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.963569" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.963240" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.964070" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397ab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.963765" 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-08-10T02:07:32.957452" elapsed="0.006713"/>
</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-08-10T02:07:32.971532" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:32.971253" elapsed="0.000341"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:32.982198" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:32.982449" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:32.982655" 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-08-10T02:07:32.971721" elapsed="0.010990"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.987718" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.983057" 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-08-10T02:07:32.970787" elapsed="0.017154"/>
</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-08-10T02:07:32.964310" elapsed="0.023748"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.951927" elapsed="0.036217"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.989220" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:32.988672" elapsed="0.000645"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:32.995125" 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-08-10T02:07:32.995358" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:32.994940" elapsed="0.000462"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:32.996177" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e47c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:32.995618" elapsed="0.000598"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.996834" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:32.996449" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.997475" 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-08-10T02:07:32.997078" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:32.998102" 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-08-10T02:07:32.997720" elapsed="0.000419"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:32.999353" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:32.998365" elapsed="0.001034"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:32.999971" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:32.999615" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.000483" 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-08-10T02:07:33.000162" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.000980" 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-08-10T02:07:33.000673" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.001480" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:33.001167" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.001972" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:33.001672" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.002482" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e47c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.002162" 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-08-10T02:07:32.994479" elapsed="0.008098"/>
</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-08-10T02:07:33.009801" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:33.009545" elapsed="0.000358"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.021725" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.021813" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.021937" 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-08-10T02:07:33.010034" elapsed="0.011940"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.026088" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.022198" elapsed="0.003984"/>
</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-08-10T02:07:33.009097" elapsed="0.017211"/>
</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-08-10T02:07:33.002723" elapsed="0.023751"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-08-10T02:07:32.988395" elapsed="0.038167"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.027693" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.027054" 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-08-10T02:07:33.033426" 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-08-10T02:07:33.033552" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:33.033275" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.034128" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397c40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.033730" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.034596" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.034305" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.035035" 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-08-10T02:07:33.034770" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.035519" 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-08-10T02:07:33.035222" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.036367" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:33.035691" elapsed="0.000708"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.036869" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.036555" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.037380" 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-08-10T02:07:33.037059" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.037895" 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-08-10T02:07:33.037573" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.038455" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:33.038087" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.038962" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:33.038654" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.039514" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397c40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.039157" 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-08-10T02:07:33.032944" elapsed="0.006679"/>
</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-08-10T02:07:33.046868" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:33.046613" elapsed="0.000319"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.056708" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.056779" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.056980" 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-08-10T02:07:33.047062" elapsed="0.009976"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.062233" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.057433" elapsed="0.004896"/>
</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-08-10T02:07:33.046157" elapsed="0.016337"/>
</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-08-10T02:07:33.039772" elapsed="0.022841"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.026777" elapsed="0.035922"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.063835" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.063205" 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-08-10T02:07:33.069622" 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-08-10T02:07:33.069879" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:33.069483" elapsed="0.000427"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.070500" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21e8e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.070059" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.070951" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.070677" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.071432" 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-08-10T02:07:33.071124" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.071872" 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-08-10T02:07:33.071606" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.072808" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:33.072043" elapsed="0.000795"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.073307" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.072991" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.073821" 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-08-10T02:07:33.073517" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.074318" 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-08-10T02:07:33.074011" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.074823" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.074525" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.075389" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.075015" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.076140" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21e8e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.075709" 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-08-10T02:07:33.069133" elapsed="0.007108"/>
</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-08-10T02:07:33.083522" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:33.083179" elapsed="0.000408"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.094188" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.094453" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.094659" 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-08-10T02:07:33.083712" elapsed="0.011005"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.099867" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.095063" elapsed="0.004884"/>
</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-08-10T02:07:33.082750" elapsed="0.017277"/>
</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-08-10T02:07:33.076407" elapsed="0.023694"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.062921" elapsed="0.037234"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.100866" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.100487" elapsed="0.000454"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:33.105815" 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-08-10T02:07:33.105989" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:33.105629" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.106832" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3692b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.106233" elapsed="0.000638"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.107553" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.107079" elapsed="0.000511"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.108141" 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-08-10T02:07:33.107829" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.108601" 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-08-10T02:07:33.108316" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.109507" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:33.108772" elapsed="0.000765"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.110004" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.109691" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.110516" 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-08-10T02:07:33.110195" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.111021" 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-08-10T02:07:33.110706" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.111545" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.111210" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.112043" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.111739" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.112561" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3692b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.112238" 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-08-10T02:07:33.105131" elapsed="0.007526"/>
</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-08-10T02:07:33.119881" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:33.119626" elapsed="0.000361"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.134792" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.134937" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.135134" 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-08-10T02:07:33.120115" elapsed="0.015076"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.140147" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.135601" elapsed="0.004606"/>
</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-08-10T02:07:33.119166" elapsed="0.021122"/>
</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-08-10T02:07:33.112802" elapsed="0.027587"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.100289" elapsed="0.040156"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.141096" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.140754" elapsed="0.000403"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:33.145984" 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-08-10T02:07:33.146159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:33.145797" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.146998" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3690d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.146430" elapsed="0.000607"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.147697" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.147245" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.148234" 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-08-10T02:07:33.147965" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.148692" 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-08-10T02:07:33.148423" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.149567" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:33.148862" elapsed="0.000735"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.150066" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.149752" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.150581" 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-08-10T02:07:33.150258" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.151078" 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-08-10T02:07:33.150770" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.151636" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:33.151302" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.152140" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:33.151835" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.152656" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3690d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.152348" 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-08-10T02:07:33.145314" elapsed="0.007438"/>
</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-08-10T02:07:33.159950" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:33.159699" elapsed="0.000313"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.169531" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.169623" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.169745" 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-08-10T02:07:33.160138" elapsed="0.009642"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.173667" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.169998" elapsed="0.003765"/>
</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-08-10T02:07:33.159238" elapsed="0.014651"/>
</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-08-10T02:07:33.152899" elapsed="0.021107"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.140580" elapsed="0.033513"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.175276" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.174624" 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-08-10T02:07:33.181408" 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-08-10T02:07:33.181534" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:33.181256" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.182105" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.181712" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.182576" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.182283" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.183023" 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-08-10T02:07:33.182751" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.183498" 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-08-10T02:07:33.183198" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.184305" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:33.183671" elapsed="0.000682"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.184821" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.184508" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.185316" 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-08-10T02:07:33.185013" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.185837" 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-08-10T02:07:33.185528" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.186322" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:33.186025" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.186836" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:33.186533" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.187347" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.187028" elapsed="0.000449"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:33.180891" elapsed="0.006647"/>
</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-08-10T02:07:33.194655" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:33.194405" elapsed="0.000309"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.204869" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.204962" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.205052" 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-08-10T02:07:33.194838" elapsed="0.010239"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.207293" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.205231" elapsed="0.002121"/>
</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-08-10T02:07:33.193959" elapsed="0.013482"/>
</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-08-10T02:07:33.187688" elapsed="0.019808"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.174305" elapsed="0.033230"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.208005" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.207759" elapsed="0.000290"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:33.211438" 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-08-10T02:07:33.211570" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:33.211275" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.212122" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.211746" elapsed="0.000403"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.212589" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.212297" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.213029" 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-08-10T02:07:33.212763" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.213486" 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-08-10T02:07:33.213201" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.214182" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:33.213656" elapsed="0.000556"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.214694" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.214383" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.215187" 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-08-10T02:07:33.214885" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.215735" 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-08-10T02:07:33.215420" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.216219" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:33.215923" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.216729" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:33.216428" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.217221" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.216921" elapsed="0.000341"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:33.210947" elapsed="0.006369"/>
</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-08-10T02:07:33.224475" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:33.224207" elapsed="0.000367"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.234484" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.234542" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.234630" 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-08-10T02:07:33.224702" elapsed="0.009953"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.238136" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.234811" elapsed="0.003367"/>
</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-08-10T02:07:33.223776" elapsed="0.014458"/>
</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-08-10T02:07:33.217478" elapsed="0.020808"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.207633" elapsed="0.030692"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.238807" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.238563" elapsed="0.000288"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:33.242247" 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-08-10T02:07:33.242402" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:33.242116" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.242974" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034a40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.242580" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.243469" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.243151" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.243919" 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-08-10T02:07:33.243646" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.244376" 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-08-10T02:07:33.244093" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.245157" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:33.244549" elapsed="0.000637"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.245671" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.245355" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.246181" 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-08-10T02:07:33.245876" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.246701" 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-08-10T02:07:33.246389" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.247191" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:33.246890" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.247769" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:33.247456" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.248270" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034a40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.247963" 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-08-10T02:07:33.241788" elapsed="0.006598"/>
</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-08-10T02:07:33.255589" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:33.255292" elapsed="0.000356"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.268661" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.268724" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.268815" 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-08-10T02:07:33.255775" elapsed="0.013066"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.271057" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.268998" elapsed="0.002102"/>
</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-08-10T02:07:33.254860" elapsed="0.016296"/>
</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-08-10T02:07:33.248535" elapsed="0.022673"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.238439" elapsed="0.032807"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.271774" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.271525" 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-08-10T02:07:33.275209" 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-08-10T02:07:33.275361" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:33.275075" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.276014" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bba0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.275551" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.276487" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.276193" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.276966" 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-08-10T02:07:33.276698" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.277425" 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-08-10T02:07:33.277139" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.278173" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:33.277598" elapsed="0.000605"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.278685" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.278372" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.279178" 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-08-10T02:07:33.278876" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.279729" 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-08-10T02:07:33.279384" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.280215" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:33.279919" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.280727" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:33.280425" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.281220" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bba0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.280920" elapsed="0.000341"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:33.274739" elapsed="0.006575"/>
</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-08-10T02:07:33.288540" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:33.288271" elapsed="0.000328"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.298706" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.298765" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.298853" 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-08-10T02:07:33.288725" elapsed="0.010154"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.301571" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.299048" elapsed="0.002567"/>
</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-08-10T02:07:33.287841" elapsed="0.013863"/>
</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-08-10T02:07:33.281478" elapsed="0.020280"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.271367" elapsed="0.030430"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.302264" level="INFO">f221.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.302019" elapsed="0.000288"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:33.305716" 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-08-10T02:07:33.305841" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:33.305584" elapsed="0.000286"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.306430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036610&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.306022" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.306881" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.306606" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.307321" 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-08-10T02:07:33.307056" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.307813" 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-08-10T02:07:33.307544" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.308621" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:33.307989" elapsed="0.000662"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.309112" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.308802" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.309624" 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-08-10T02:07:33.309303" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.310118" 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-08-10T02:07:33.309811" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.310617" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.310304" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.311109" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.310809" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.311640" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036610&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.311301" 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-08-10T02:07:33.305236" elapsed="0.006499"/>
</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-08-10T02:07:33.318912" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:33.318663" elapsed="0.000307"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.327457" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.327532" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.327622" 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-08-10T02:07:33.319094" elapsed="0.008553"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.329867" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.327804" elapsed="0.002106"/>
</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-08-10T02:07:33.318219" elapsed="0.011747"/>
</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-08-10T02:07:33.311881" elapsed="0.018138"/>
</kw>
<var name="${flowfile}">f221.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.301893" elapsed="0.028165"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.330543" level="INFO">f222.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.330278" elapsed="0.000310"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:33.334004" 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-08-10T02:07:33.334129" 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-08-10T02:07:33.333871" elapsed="0.000287"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.334695" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.334305" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.335149" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.334877" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.335621" 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-08-10T02:07:33.335323" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.336058" 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-08-10T02:07:33.335793" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.336733" 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-08-10T02:07:33.336229" elapsed="0.000535"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.337225" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.336917" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.337744" 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-08-10T02:07:33.337439" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.338240" 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-08-10T02:07:33.337934" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.338746" 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-08-10T02:07:33.338448" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.339282" 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-08-10T02:07:33.338978" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.339843" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.339496" 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-08-10T02:07:33.333541" elapsed="0.006397"/>
</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-08-10T02:07:33.347114" 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-08-10T02:07:33.346867" elapsed="0.000302"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.357370" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.357428" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.357517" 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-08-10T02:07:33.347295" elapsed="0.010247"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.359790" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.357699" elapsed="0.002135"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-08-10T02:07:33.346432" elapsed="0.013459"/>
</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-08-10T02:07:33.340085" elapsed="0.019859"/>
</kw>
<var name="${flowfile}">f222.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.330153" elapsed="0.029830"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.360469" level="INFO">f223.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.360205" 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-08-10T02:07:33.363911" 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-08-10T02:07:33.364035" 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-08-10T02:07:33.363778" elapsed="0.000286"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.364601" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0348b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.364211" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.365052" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.364778" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.365511" 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-08-10T02:07:33.365226" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.365956" 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-08-10T02:07:33.365685" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.366684" 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-08-10T02:07:33.366167" elapsed="0.000547"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.367179" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.366867" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.367704" 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-08-10T02:07:33.367387" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.368200" 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-08-10T02:07:33.367894" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.368705" 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-08-10T02:07:33.368406" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.369197" 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-08-10T02:07:33.368897" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.369710" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0348b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.369406" 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-08-10T02:07:33.363422" elapsed="0.006382"/>
</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-08-10T02:07:33.377011" 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-08-10T02:07:33.376762" elapsed="0.000306"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.386823" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.386880" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.386968" 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-08-10T02:07:33.377194" elapsed="0.009799"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.389245" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.387151" elapsed="0.002137"/>
</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-08-10T02:07:33.376314" elapsed="0.013047"/>
</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-08-10T02:07:33.369949" elapsed="0.019467"/>
</kw>
<var name="${flowfile}">f223.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.360078" elapsed="0.029377"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.389922" level="INFO">f224.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.389678" elapsed="0.000288"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:33.393517" 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-08-10T02:07:33.393644" 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-08-10T02:07:33.393374" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.394210" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c1d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.393820" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.394697" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.394418" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.395142" 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-08-10T02:07:33.394876" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.395639" 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-08-10T02:07:33.395319" elapsed="0.000347"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.396314" 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-08-10T02:07:33.395814" elapsed="0.000547"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.396827" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.396516" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.397355" 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-08-10T02:07:33.397021" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.397856" 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-08-10T02:07:33.397548" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.398357" 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-08-10T02:07:33.398044" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.398851" 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-08-10T02:07:33.398550" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.399362" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c1d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.399043" 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-08-10T02:07:33.393008" elapsed="0.006450"/>
</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-08-10T02:07:33.409496" 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-08-10T02:07:33.409225" elapsed="0.000328"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.419881" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.420011" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.420139" 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-08-10T02:07:33.409681" elapsed="0.010494"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.423260" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.420426" elapsed="0.002894"/>
</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-08-10T02:07:33.408791" elapsed="0.014631"/>
</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-08-10T02:07:33.399617" elapsed="0.023879"/>
</kw>
<var name="${flowfile}">f224.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.389551" elapsed="0.034000"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.424239" level="INFO">f225.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.423898" elapsed="0.000401"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:33.429056" 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-08-10T02:07:33.429230" 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-08-10T02:07:33.428870" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.430017" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b8d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.429498" elapsed="0.000558"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.430671" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.430263" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.431285" 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-08-10T02:07:33.430915" elapsed="0.000406"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.431974" 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-08-10T02:07:33.431551" elapsed="0.000459"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.432892" 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-08-10T02:07:33.432217" elapsed="0.000705"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.433403" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.433076" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.433898" 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-08-10T02:07:33.433595" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.434409" 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-08-10T02:07:33.434087" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.434896" 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-08-10T02:07:33.434599" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.435405" 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-08-10T02:07:33.435087" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.435916" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b8d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.435596" 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-08-10T02:07:33.428409" elapsed="0.007601"/>
</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-08-10T02:07:33.443210" 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-08-10T02:07:33.442960" elapsed="0.000344"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.455579" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.455759" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.455913" 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-08-10T02:07:33.443451" elapsed="0.012500"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.460581" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.456190" elapsed="0.004488"/>
</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-08-10T02:07:33.442528" 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-08-10T02:07:33.436156" elapsed="0.024773"/>
</kw>
<var name="${flowfile}">f225.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.423720" elapsed="0.037297"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.462103" level="INFO">f550.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.461555" elapsed="0.000645"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:33.469448" 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-08-10T02:07:33.469584" 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-08-10T02:07:33.469288" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:33.470155" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3973d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:33.469761" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.470624" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:33.470347" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.471063" 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-08-10T02:07:33.470797" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:33.471517" 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-08-10T02:07:33.471234" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:33.472282" 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-08-10T02:07:33.471703" elapsed="0.000609"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.472802" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.472484" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.473294" 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-08-10T02:07:33.472992" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.473813" 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-08-10T02:07:33.473500" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.474297" 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-08-10T02:07:33.474001" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.474851" 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-08-10T02:07:33.474545" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.475366" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3973d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:33.475046" 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-08-10T02:07:33.468953" elapsed="0.006510"/>
</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-08-10T02:07:33.482661" 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-08-10T02:07:33.482411" elapsed="0.000309"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:33.492280" level="INFO">PUT Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.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-08-10T02:07:33.492363" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:07:33.492455" 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-08-10T02:07:33.482846" elapsed="0.009635"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:33.497147" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:33.492638" elapsed="0.004606"/>
</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-08-10T02:07:33.481962" elapsed="0.015445"/>
</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-08-10T02:07:33.475606" elapsed="0.021923"/>
</kw>
<var name="${flowfile}">f550.xml</var>
<status status="PASS" start="2026-08-10T02:07:33.461238" elapsed="0.036377"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-08-10T02:07:31.430660" elapsed="2.067023"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.498936" 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-08-10T02:07:33.498016" elapsed="3.001157"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:36.504471" 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-08-10T02:07:36.499703" elapsed="0.004897"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:36.644726" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=21.251s, table=0, n_packets=14, n_bytes=1132, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=3.014s, table=2, n_packets=0, n_bytes=0, priority=550,tun_src=192.168.0.10 actions=drop
 cookie=0x0, duration=3.050s, 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.085s, 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.120s, 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.148s, table=2, n_packets=0, n_bytes=0, priority=222,ip,nw_dst=2.2.0.0/16 actions=drop
 cookie=0xdb, duration=3.238s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xdd, duration=3.179s, table=2, n_packets=0, n_bytes=0, priority=221,dl_vlan=10,dl_vlan_pcp=3 actions=drop
 cookie=0x1, duration=5.043s, table=2, n_packets=0, n_bytes=0, priority=1,ip,nw_dst=10.0.1.0/24 actions=drop
 cookie=0x1f, duration=4.214s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=TABLE
 cookie=0x24, duration=4.168s, table=2, n_packets=0, n_bytes=0, priority=36,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x26, duration=4.129s, table=2, n_packets=0, n_bytes=0, priority=38,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0xdc, duration=3.207s, 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.272s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=3.301s, 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.396s, 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.358s, 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.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=3.899s, 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.336s, 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.721s, 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.682s, 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.411s, 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.371s, 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.559s, 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.524s, 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.484s, 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.448s, 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.579s, 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.595s, 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.780s, 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.741s, 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.708s, 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.636s, 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.673s, 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.821s, 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.861s, table=2, n_packets=0, n_bytes=0, priority=105,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdcd:a000::/84,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=180,nw_ecn=2,tp_src=20345,tp_dst=80 actions=drop
 cookie=0x66, duration=3.970s, 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.933s, table=2, n_packets=0, n_bytes=0, priority=103,tcp,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x2d, duration=4.049s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=TABLE
 cookie=0x2b, duration=4.089s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=drop
 cookie=0x17, duration=4.321s, 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.249s, 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.284s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=drop
 cookie=0x14, duration=4.427s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=drop
 cookie=0x13, duration=4.465s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=drop
 cookie=0x12, duration=4.505s, 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.541s, 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.617s, 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.649s, 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.760s, 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.798s, 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.830s, 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.865s, 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.904s, 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.944s, table=2, n_packets=0, n_bytes=0, priority=4,mpls,dl_src=00:00:00:00:23:ae,dl_dst=ff:ff:ff:ff:ff:ff actions=drop
 cookie=0x3, duration=4.978s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=TABLE
 cookie=0x2, duration=5.011s, 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-08-10T02:07:36.504900" elapsed="0.140098"/>
</kw>
<doc>Update all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-08-10T02:07:31.430267" elapsed="5.214902"/>
</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-08-10T02:07:36.659214" 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-08-10T02:07:36.659423" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:36.659057" elapsed="0.000396"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:36.660072" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbedfd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:36.659615" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:36.660556" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:36.660253" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:36.661008" 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-08-10T02:07:36.660734" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:36.661475" 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-08-10T02:07:36.661184" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:36.662268" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:36.661651" elapsed="0.000648"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.662849" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.662479" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.663391" 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-08-10T02:07:36.663052" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.663911" 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-08-10T02:07:36.663584" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.664431" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.664103" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.664946" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.664628" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.665476" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbedfd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.665140" 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-08-10T02:07:36.658684" elapsed="0.006891"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.666138" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:36.665725" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.666578" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:36.666316" 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-08-10T02:07:36.674529" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:36.674204" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:36.682857" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:36.683102" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:36.683209" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:36.674732" elapsed="0.008503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.683672" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:36.683419" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.688548" 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-08-10T02:07:36.683900" elapsed="0.004778"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.692308" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.688845" elapsed="0.003535"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.688797" elapsed="0.003608"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:36.695377" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:36.695425" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:36.692550" elapsed="0.002898"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:36.697225" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:36.695524" elapsed="0.001756"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.695505" elapsed="0.001799"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:36.697353" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:07:36.697558" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:36.697602" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:36.673888" elapsed="0.023736"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.699791" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.698168" elapsed="0.001669"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.698151" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.700418" 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-08-10T02:07:36.700003" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.700952" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:36.700605" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:36.701028" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:36.701204" 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-08-10T02:07:36.697839" elapsed="0.003390"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:36.701404" 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-08-10T02:07:36.673293" elapsed="0.028575"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.709899" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:36.709563" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:36.722117" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:36.722787" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fals... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:36.723217" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:36.710058" elapsed="0.013197"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.723857" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:36.723505" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.729594" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;196000000&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;651000000&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;232000000&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;691000000&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;272000000&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;725000000&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;307000000&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;758000000&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;2&lt;/second&gt;&lt;nanosecond&gt;791000000&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;1&lt;/second&gt;&lt;nanosecond&gt;797000000&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;106000000&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;0&lt;/second&gt;&lt;nanosecond&gt;955000000&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;144000000&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;0&lt;/second&gt;&lt;nanosecond&gt;986000000&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;175000000&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;20000000&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;213000000&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;252000000&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;288000000&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;327000000&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;49000000&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;364000000&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;396000000&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;421000000&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;456000000&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;1&lt;/second&gt;&lt;nanosecond&gt;962000000&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;489000000&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;762000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;528000000&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;569000000&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;609000000&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;647000000&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;798000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;681000000&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;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;997000000&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;718000000&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;0&lt;/second&gt;&lt;nanosecond&gt;868000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;32000000&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;758000000&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;0&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;69000000&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;0&lt;/second&gt;&lt;nanosecond&gt;927000000&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;1&lt;/second&gt;&lt;nanosecond&gt;837000000&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;1&lt;/second&gt;&lt;nanosecond&gt;877000000&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;1&lt;/second&gt;&lt;nanosecond&gt;916000000&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;384000000&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;343000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:36.724276" elapsed="0.007428"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.733693" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.731873" elapsed="0.001868"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.731826" elapsed="0.001938"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:36.759257" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:36.759304" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:36.733904" elapsed="0.025423"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:36.761133" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:36.759425" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.759406" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:36.761247" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:36.761461" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:36.761505" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:36.709167" elapsed="0.052360"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.763788" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.762075" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.762057" elapsed="0.001799"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.764420" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:36.764003" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.764958" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:36.764609" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:36.765033" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:36.765211" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:36.761744" 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-08-10T02:07:36.765416" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:36.708549" elapsed="0.057317"/>
</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-08-10T02:07:36.655380" elapsed="0.110544"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:36.645525" elapsed="0.120517"/>
</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-08-10T02:07:36.776971" 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-08-10T02:07:36.777135" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:36.776822" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:36.777751" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368ef0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:36.777320" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:36.778211" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:36.777930" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:36.778672" 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-08-10T02:07:36.778404" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:36.779143" 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-08-10T02:07:36.778846" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:36.779950" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:36.779315" elapsed="0.000665"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.780506" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.780135" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.781081" 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-08-10T02:07:36.780758" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.781620" 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-08-10T02:07:36.781274" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.782135" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.781815" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.782669" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.782330" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.783201" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368ef0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.782877" 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-08-10T02:07:36.776484" elapsed="0.006816"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.783867" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:36.783469" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.784290" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:36.784048" 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-08-10T02:07:36.792074" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:36.791765" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:36.798709" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:36.801893" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:36.802006" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:36.792234" elapsed="0.009797"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.802495" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:36.802219" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.805130" 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-08-10T02:07:36.802682" elapsed="0.002591"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.807890" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.805406" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.805373" elapsed="0.002625"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:36.812076" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:36.812122" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:36.808199" elapsed="0.003946"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:36.813931" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:36.812219" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.812200" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:36.814045" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:07:36.814244" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:36.814296" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:36.791447" elapsed="0.022872"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.816481" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.814898" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.814870" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.817091" 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-08-10T02:07:36.816695" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.817643" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:36.817278" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:36.817718" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:36.817894" 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-08-10T02:07:36.814556" elapsed="0.003364"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:36.818087" 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-08-10T02:07:36.790827" elapsed="0.027735"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.826380" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:36.826039" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:36.840197" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:36.840705" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fals... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:36.840991" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:36.826539" elapsed="0.014479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.841466" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:36.841192" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.844156" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;196000000&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;651000000&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;232000000&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;691000000&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;272000000&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;725000000&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;307000000&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;758000000&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;2&lt;/second&gt;&lt;nanosecond&gt;791000000&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;1&lt;/second&gt;&lt;nanosecond&gt;797000000&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;106000000&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;0&lt;/second&gt;&lt;nanosecond&gt;955000000&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;144000000&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;0&lt;/second&gt;&lt;nanosecond&gt;986000000&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;175000000&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;20000000&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;213000000&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;252000000&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;288000000&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;327000000&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;49000000&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;364000000&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;396000000&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;421000000&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;456000000&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;1&lt;/second&gt;&lt;nanosecond&gt;962000000&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;489000000&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;762000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;528000000&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;569000000&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;609000000&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;647000000&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;798000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;681000000&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;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;997000000&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;718000000&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;0&lt;/second&gt;&lt;nanosecond&gt;868000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;32000000&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;758000000&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;0&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;69000000&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;0&lt;/second&gt;&lt;nanosecond&gt;927000000&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;1&lt;/second&gt;&lt;nanosecond&gt;837000000&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;1&lt;/second&gt;&lt;nanosecond&gt;877000000&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;1&lt;/second&gt;&lt;nanosecond&gt;916000000&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;384000000&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;343000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:36.841655" elapsed="0.003447"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.846991" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.845173" elapsed="0.001868"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.845154" elapsed="0.001909"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:36.873141" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:36.873189" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:36.847203" elapsed="0.026010"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:36.875053" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:36.873294" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.873275" elapsed="0.001860"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:36.875170" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:36.875383" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:36.875428" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:36.825670" elapsed="0.049781"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.877599" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.876002" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.875984" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.878215" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:36.877811" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.878770" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:36.878420" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:36.878844" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:36.879049" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:36.875672" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:36.879230" 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-08-10T02:07:36.825039" elapsed="0.054670"/>
</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-08-10T02:07:36.773161" elapsed="0.106603"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:36.766309" elapsed="0.113580"/>
</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-08-10T02:07:36.891076" 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-08-10T02:07:36.891242" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:36.890858" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:36.891861" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6e80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:36.891452" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:36.892323" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:36.892042" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:36.892791" 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-08-10T02:07:36.892521" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:36.893235" 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-08-10T02:07:36.892968" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:36.894020" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:36.893434" elapsed="0.000617"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.894551" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.894204" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.895143" 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-08-10T02:07:36.894788" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.895680" 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-08-10T02:07:36.895353" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.896180" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.895871" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.896707" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.896391" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.897216" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6e80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:36.896900" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:36.890523" elapsed="0.006789"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.897861" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:36.897479" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.898284" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:36.898042" 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-08-10T02:07:36.906022" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:36.905723" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:36.911969" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:36.912189" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:36.912293" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:36.906175" elapsed="0.006144"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.912751" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:36.912502" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.915156" 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-08-10T02:07:36.912933" elapsed="0.002314"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.917575" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.915317" elapsed="0.002328"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.915298" elapsed="0.002379"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:36.921635" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:36.921698" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:36.917875" elapsed="0.003856"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:36.924140" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:36.921833" elapsed="0.002363"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.921807" elapsed="0.002413"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:36.924253" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:36.924466" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:36.924510" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:36.905410" elapsed="0.019122"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.926652" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.925069" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.925052" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.927427" 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-08-10T02:07:36.926867" elapsed="0.000586"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.927956" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:36.927612" elapsed="0.000369"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:36.928030" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:36.928207" 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-08-10T02:07:36.924744" elapsed="0.003487"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:36.928400" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:36.904835" elapsed="0.024011"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.936581" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:36.936267" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:36.965321" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:36.965983" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fals... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:36.966281" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:36.936733" elapsed="0.029574"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.966761" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:36.966498" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:36.969480" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;196000000&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;651000000&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;232000000&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;691000000&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;272000000&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;725000000&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;307000000&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;758000000&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;2&lt;/second&gt;&lt;nanosecond&gt;791000000&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;1&lt;/second&gt;&lt;nanosecond&gt;797000000&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;106000000&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;0&lt;/second&gt;&lt;nanosecond&gt;955000000&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;144000000&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;0&lt;/second&gt;&lt;nanosecond&gt;986000000&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;175000000&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;20000000&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;213000000&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;252000000&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;288000000&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;327000000&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;49000000&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;364000000&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;396000000&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;421000000&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;456000000&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;1&lt;/second&gt;&lt;nanosecond&gt;962000000&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;489000000&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;762000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;528000000&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;569000000&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;609000000&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;647000000&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;798000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;681000000&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;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;997000000&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;718000000&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;0&lt;/second&gt;&lt;nanosecond&gt;868000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;32000000&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;758000000&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;0&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;69000000&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;0&lt;/second&gt;&lt;nanosecond&gt;927000000&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;1&lt;/second&gt;&lt;nanosecond&gt;837000000&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;1&lt;/second&gt;&lt;nanosecond&gt;877000000&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;1&lt;/second&gt;&lt;nanosecond&gt;916000000&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;384000000&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;343000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:36.966945" elapsed="0.003464"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:36.972359" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:36.970496" elapsed="0.001921"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.970471" elapsed="0.001970"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:36.997689" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:36.997745" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:36.972594" elapsed="0.025174"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:36.999697" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:36.997872" elapsed="0.001884"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:36.997845" elapsed="0.001938"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:36.999820" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:07:37.000045" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:37.000089" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:36.935897" elapsed="0.064214"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.002354" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.000766" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.000748" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.003048" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.002579" elapsed="0.000535"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.003656" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.003279" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.003732" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.003910" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:37.000401" 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-08-10T02:07:37.004090" 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-08-10T02:07:36.935278" elapsed="0.069302"/>
</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-08-10T02:07:36.887124" elapsed="0.117516"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:36.880244" elapsed="0.124528"/>
</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-08-10T02:07:37.015826" 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-08-10T02:07:37.015998" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:37.015680" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:37.016615" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d8f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:37.016179" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.017075" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:37.016795" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.017538" 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-08-10T02:07:37.017251" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.017977" 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-08-10T02:07:37.017711" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.018807" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:37.018149" elapsed="0.000688"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.019391" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.018992" elapsed="0.000442"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.019968" 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-08-10T02:07:37.019640" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.020499" 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-08-10T02:07:37.020159" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.021002" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.020688" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.021528" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.021194" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.022037" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d8f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.021720" 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-08-10T02:07:37.015327" elapsed="0.006805"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.022690" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:37.022280" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.023121" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:37.022870" 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-08-10T02:07:37.030868" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.030564" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.037185" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.037532" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:37.037686" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.031023" elapsed="0.006700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.038292" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.037944" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.041655" 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-08-10T02:07:37.038580" elapsed="0.003203"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.044376" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.041880" elapsed="0.002567"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.041854" elapsed="0.002625"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.048520" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.048585" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:37.044675" elapsed="0.003942"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.051177" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.048720" elapsed="0.002539"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.048695" elapsed="0.002597"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.051366" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:07:37.051646" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:37.051706" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:37.030231" elapsed="0.021506"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.053932" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.052317" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.052299" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.054568" 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-08-10T02:07:37.054145" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.055120" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.054755" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.055200" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.055398" 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-08-10T02:07:37.051988" elapsed="0.003436"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.055578" 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-08-10T02:07:37.029675" elapsed="0.026352"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.063873" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.063546" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.077295" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.077984" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fals... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:37.078407" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.064054" elapsed="0.014392"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.079028" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.078674" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.082818" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;196000000&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;651000000&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;232000000&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;691000000&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;272000000&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;725000000&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;307000000&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;758000000&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;2&lt;/second&gt;&lt;nanosecond&gt;791000000&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;1&lt;/second&gt;&lt;nanosecond&gt;797000000&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;106000000&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;0&lt;/second&gt;&lt;nanosecond&gt;955000000&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;144000000&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;0&lt;/second&gt;&lt;nanosecond&gt;986000000&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;175000000&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;20000000&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;213000000&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;252000000&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;288000000&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;327000000&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;49000000&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;364000000&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;396000000&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;421000000&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;456000000&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;1&lt;/second&gt;&lt;nanosecond&gt;962000000&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;489000000&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;762000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;528000000&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;569000000&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;609000000&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;647000000&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;798000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;681000000&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;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;997000000&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;718000000&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;0&lt;/second&gt;&lt;nanosecond&gt;868000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;32000000&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;758000000&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;0&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;69000000&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;0&lt;/second&gt;&lt;nanosecond&gt;927000000&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;1&lt;/second&gt;&lt;nanosecond&gt;837000000&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;1&lt;/second&gt;&lt;nanosecond&gt;877000000&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;1&lt;/second&gt;&lt;nanosecond&gt;916000000&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;384000000&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;343000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.079311" elapsed="0.004801"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.086675" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.084213" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.084187" elapsed="0.002588"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.111824" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.111883" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:37.086966" elapsed="0.024945"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.113872" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.112009" elapsed="0.001922"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.111984" elapsed="0.001972"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.113990" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:37.114189" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:37.114233" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:37.063153" elapsed="0.051103"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.116450" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.114840" elapsed="0.001656"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.114823" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.117074" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.116667" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.117669" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.117263" elapsed="0.000431"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.117744" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.117921" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:37.114503" elapsed="0.003443"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.118101" 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-08-10T02:07:37.062528" elapsed="0.056045"/>
</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-08-10T02:07:37.011956" elapsed="0.106673"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:37.005086" elapsed="0.113669"/>
</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-08-10T02:07:37.129794" 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-08-10T02:07:37.129943" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:37.129650" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:37.130555" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db100&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:37.130124" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.131013" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:37.130734" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.131491" 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-08-10T02:07:37.131205" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.131935" 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-08-10T02:07:37.131668" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.132777" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:37.132109" elapsed="0.000699"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.133292" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.132965" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.133880" 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-08-10T02:07:37.133551" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.134414" 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-08-10T02:07:37.134071" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.134916" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.134606" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.135474" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.135110" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.135985" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db100&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.135670" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:37.129299" elapsed="0.006783"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.136630" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:37.136228" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.137046" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:37.136808" 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-08-10T02:07:37.144765" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.144462" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.152553" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.152780" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:37.152891" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.144925" elapsed="0.008004"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.153525" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.153150" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.156904" 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-08-10T02:07:37.153784" elapsed="0.003246"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.159681" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.157127" elapsed="0.002624"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.157101" elapsed="0.002682"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.164006" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.164052" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:37.159974" elapsed="0.004101"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.165840" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.164147" elapsed="0.001748"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.164129" elapsed="0.001790"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.165952" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.166144" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:37.166187" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:37.144132" elapsed="0.022078"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.168370" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.166770" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.166753" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.168973" 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-08-10T02:07:37.168580" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.169570" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.169195" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.169646" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:37.169821" 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-08-10T02:07:37.166443" 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-08-10T02:07:37.169998" 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-08-10T02:07:37.143579" elapsed="0.026879"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.178127" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.177833" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.191731" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.192751" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fals... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:37.193456" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.178282" elapsed="0.015238"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.194537" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.193908" elapsed="0.000730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.200374" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;430000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;119000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;196000000&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;651000000&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;232000000&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;691000000&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;272000000&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;725000000&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;307000000&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;758000000&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;2&lt;/second&gt;&lt;nanosecond&gt;791000000&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;1&lt;/second&gt;&lt;nanosecond&gt;797000000&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;106000000&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;0&lt;/second&gt;&lt;nanosecond&gt;955000000&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;144000000&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;0&lt;/second&gt;&lt;nanosecond&gt;986000000&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;175000000&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;20000000&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;213000000&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;252000000&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;288000000&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;327000000&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;49000000&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;364000000&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;396000000&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;421000000&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;456000000&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;1&lt;/second&gt;&lt;nanosecond&gt;962000000&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;489000000&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;762000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;528000000&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;569000000&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;609000000&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;647000000&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;798000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;681000000&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;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;997000000&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;718000000&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;0&lt;/second&gt;&lt;nanosecond&gt;868000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;32000000&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;758000000&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;0&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;69000000&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;0&lt;/second&gt;&lt;nanosecond&gt;927000000&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;1&lt;/second&gt;&lt;nanosecond&gt;837000000&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;1&lt;/second&gt;&lt;nanosecond&gt;877000000&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;1&lt;/second&gt;&lt;nanosecond&gt;916000000&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;384000000&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;343000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.194952" elapsed="0.006339"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.203195" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.201392" elapsed="0.001875"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.201367" elapsed="0.001924"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.275147" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.275220" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:37.203464" elapsed="0.071781"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.277258" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.275412" elapsed="0.001907"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.275376" elapsed="0.001988"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.277403" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:37.277627" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:37.277671" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:37.177456" elapsed="0.100238"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.279997" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.278316" elapsed="0.001726"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.278298" elapsed="0.001766"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.280694" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.280217" elapsed="0.000505"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.281240" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.280887" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.281315" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:07:37.281512" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:37.277953" 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-08-10T02:07:37.281691" 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-08-10T02:07:37.176834" elapsed="0.105325"/>
</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-08-10T02:07:37.125910" elapsed="0.156307"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:37.119041" elapsed="0.163322"/>
</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-08-10T02:07:37.293378" 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-08-10T02:07:37.293547" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:37.293212" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:37.294146" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dafc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:37.293728" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.294634" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:37.294324" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.295072" 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-08-10T02:07:37.294807" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.295556" 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-08-10T02:07:37.295243" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.296418" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:37.295731" elapsed="0.000717"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.296936" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.296605" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.297521" 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-08-10T02:07:37.297187" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.298030" 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-08-10T02:07:37.297711" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.298542" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.298217" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.299045" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.298734" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.299600" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dafc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.299235" 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-08-10T02:07:37.292840" elapsed="0.006856"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.300225" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:37.299842" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.300659" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:37.300419" 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-08-10T02:07:37.308461" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.308136" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.314176" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.314457" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:37.314567" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.308618" elapsed="0.005975"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.315004" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.314751" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.317273" 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-08-10T02:07:37.315190" elapsed="0.002192"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.319179" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.317452" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.317433" elapsed="0.001818"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.322263" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.322308" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:37.319434" elapsed="0.002896"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.324090" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.322420" elapsed="0.001724"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.322402" elapsed="0.001766"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.324201" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.324412" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:37.324456" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:37.307824" elapsed="0.016654"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.326604" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.325022" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.325005" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.327212" 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-08-10T02:07:37.326817" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.327798" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.327449" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.327873" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:37.328048" 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-08-10T02:07:37.324691" elapsed="0.003382"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.328226" 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-08-10T02:07:37.307241" elapsed="0.021455"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.336647" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.336347" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.348381" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.348852" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:37.349150" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.336802" elapsed="0.012375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.349604" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.349353" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.352115" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.349790" elapsed="0.003245"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.354848" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.353105" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.353086" elapsed="0.001833"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.379143" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.379191" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:37.355056" elapsed="0.024158"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.383619" elapsed="0.000097"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.379293" elapsed="0.004540"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.379274" elapsed="0.004619"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.383974" elapsed="0.000081"/>
</return>
<msg time="2026-08-10T02:07:37.384386" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:37.384455" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:37.335958" elapsed="0.048531"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.387919" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.385402" elapsed="0.002586"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.385373" elapsed="0.002648"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.389003" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.388265" elapsed="0.000779"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.389834" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.389289" elapsed="0.000584"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.389945" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:07:37.390222" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:37.384857" elapsed="0.005402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.390517" elapsed="0.000598"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:37.335298" elapsed="0.055910"/>
</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-08-10T02:07:37.289575" elapsed="0.101719"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:37.282690" elapsed="0.108869"/>
</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-08-10T02:07:37.402784" 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-08-10T02:07:37.402956" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:37.402633" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:37.403618" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe15800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:37.403139" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.404082" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:37.403799" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.404546" 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-08-10T02:07:37.404257" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.404986" 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-08-10T02:07:37.404720" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.406095" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:37.405192" elapsed="0.000935"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.406668" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.406294" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.407270" 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-08-10T02:07:37.406949" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.407846" 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-08-10T02:07:37.407516" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.408364" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.408036" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.408875" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.408558" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.409405" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe15800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.409070" 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-08-10T02:07:37.402268" elapsed="0.007238"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.410059" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:37.409655" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.410500" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:37.410239" 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-08-10T02:07:37.418538" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.418205" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.425083" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.425495" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:37.425659" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.418701" elapsed="0.006996"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.426300" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.425932" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.429892" 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-08-10T02:07:37.426655" elapsed="0.003329"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.432646" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.430092" elapsed="0.002627"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.430062" elapsed="0.002689"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.436813" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.436859" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:37.432946" elapsed="0.003936"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.438667" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.436956" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.436938" elapsed="0.001809"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.438781" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:07:37.438985" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:37.439029" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:37.417888" elapsed="0.021163"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.441403" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.439645" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.439627" elapsed="0.001843"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.442016" 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-08-10T02:07:37.441617" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.442572" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.442204" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.442647" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.442824" 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-08-10T02:07:37.439266" 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-08-10T02:07:37.443003" 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-08-10T02:07:37.417290" elapsed="0.026212"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.451256" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.450959" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.464134" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.465199" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:37.465899" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.451426" elapsed="0.014533"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.466922" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.466319" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.472239" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.467378" elapsed="0.005779"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.475014" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.473259" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.473239" elapsed="0.001846"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.498039" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.498088" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:37.475225" elapsed="0.022887"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.501747" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.498195" elapsed="0.003608"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.498175" elapsed="0.003653"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.501863" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:37.502057" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:37.502101" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:37.450586" elapsed="0.051537"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.504294" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.502694" elapsed="0.001682"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.502677" elapsed="0.001723"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.504961" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.504559" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.505518" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.505147" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.505593" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:37.505768" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:37.502360" elapsed="0.003434"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.505948" 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-08-10T02:07:37.449951" elapsed="0.056462"/>
</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-08-10T02:07:37.398954" elapsed="0.107515"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:37.391944" elapsed="0.114649"/>
</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-08-10T02:07:37.517510" 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-08-10T02:07:37.517665" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:37.517363" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:37.518274" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e76f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:37.517843" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.518751" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:37.518470" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.519190" 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-08-10T02:07:37.518925" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.519676" 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-08-10T02:07:37.519379" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.520609" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:37.519849" elapsed="0.000790"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.521126" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.520791" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.521696" 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-08-10T02:07:37.521377" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.522208" 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-08-10T02:07:37.521888" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.522723" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.522414" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.523229" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.522915" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.523776" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e76f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.523437" 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-08-10T02:07:37.517020" elapsed="0.006851"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.524411" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:37.524018" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.524828" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:37.524590" 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-08-10T02:07:37.532740" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.532438" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.537902" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.538265" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:37.538451" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.532895" elapsed="0.005593"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.539100" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.538751" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.542319" 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-08-10T02:07:37.539386" elapsed="0.003043"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.544996" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.542525" elapsed="0.002541"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.542499" elapsed="0.002597"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.549196" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.549243" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:37.545290" elapsed="0.003975"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.551033" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.549355" elapsed="0.001733"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.549320" elapsed="0.001792"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.551145" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.551352" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:37.551398" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:37.532108" elapsed="0.019313"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.553711" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.551971" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.551953" elapsed="0.001826"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.554321" 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-08-10T02:07:37.553926" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.554879" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.554531" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.554955" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.555130" 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-08-10T02:07:37.551644" elapsed="0.003511"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.555308" 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-08-10T02:07:37.531553" elapsed="0.024246"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.563553" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.563239" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.574765" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.575896" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:37.576598" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.563740" elapsed="0.012918"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.577606" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.577007" elapsed="0.000700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.583287" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.578023" elapsed="0.006612"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.586445" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.584708" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.584689" elapsed="0.001827"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.611948" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.612001" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:37.586653" elapsed="0.025372"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.614163" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.612121" elapsed="0.002106"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.612098" elapsed="0.002157"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.614295" elapsed="0.000057"/>
</return>
<msg time="2026-08-10T02:07:37.614541" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:37.614586" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:37.562867" elapsed="0.051742"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.616887" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.615230" elapsed="0.001704"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.615213" elapsed="0.001743"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.617577" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.617106" elapsed="0.000499"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.618112" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.617765" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.618187" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.618381" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:37.614870" 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-08-10T02:07:37.618567" 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-08-10T02:07:37.562245" elapsed="0.056794"/>
</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-08-10T02:07:37.513762" elapsed="0.105339"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:37.506905" elapsed="0.112324"/>
</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-08-10T02:07:37.630209" 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-08-10T02:07:37.630407" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:37.630065" elapsed="0.000371"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:37.631030" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:37.630590" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.631515" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:37.631210" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.631993" 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-08-10T02:07:37.631717" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.632455" 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-08-10T02:07:37.632169" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.633408" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:37.632631" elapsed="0.000807"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.633925" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.633593" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.634516" 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-08-10T02:07:37.634178" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.635036" 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-08-10T02:07:37.634709" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.635556" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.635226" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.636087" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.635764" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.636619" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.636282" 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-08-10T02:07:37.629733" elapsed="0.006981"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.637237" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:37.636861" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.637681" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:37.637442" 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-08-10T02:07:37.647629" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.647305" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.654233" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.654539" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:37.654662" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.647812" elapsed="0.006876"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.655130" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.654878" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.658016" 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-08-10T02:07:37.655316" elapsed="0.002788"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.660652" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.658202" elapsed="0.002518"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.658175" elapsed="0.002576"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.665220" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.665268" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:37.660949" elapsed="0.004342"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.667082" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.665391" elapsed="0.001746"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.665365" elapsed="0.001797"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.667197" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.667412" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:37.667455" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:37.646989" elapsed="0.020488"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.669668" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.668073" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.668055" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.670288" 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-08-10T02:07:37.669882" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.670843" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.670495" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.670924" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:37.671105" 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-08-10T02:07:37.667729" 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-08-10T02:07:37.671285" 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-08-10T02:07:37.646428" elapsed="0.025354"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.682041" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.681739" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.694822" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.695290" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:37.695615" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.682198" elapsed="0.013443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.696093" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.695838" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.698603" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.696279" elapsed="0.003237"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.701383" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.699587" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.699568" elapsed="0.001888"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.723912" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.723959" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:37.701603" elapsed="0.022379"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.725803" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.724062" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.724043" elapsed="0.001840"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.725917" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:37.726116" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:37.726160" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:37.681360" elapsed="0.044822"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.731458" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.726773" elapsed="0.004732"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.726755" elapsed="0.004772"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.732136" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.731682" elapsed="0.000481"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.732692" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.732323" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.732767" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.732944" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:37.726438" elapsed="0.006531"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.733124" 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-08-10T02:07:37.680719" elapsed="0.052877"/>
</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-08-10T02:07:37.626473" elapsed="0.107182"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:37.619640" elapsed="0.114136"/>
</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-08-10T02:07:37.744812" 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-08-10T02:07:37.744984" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:37.744668" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:37.745610" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:37.745165" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.746070" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:37.745790" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.746529" 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-08-10T02:07:37.746244" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.746969" 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-08-10T02:07:37.746703" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.748004" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:37.747142" elapsed="0.000894"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.748553" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.748197" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.749118" 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-08-10T02:07:37.748794" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.749656" 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-08-10T02:07:37.749310" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.750159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.749847" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.750685" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.750368" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.751191" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.750878" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:37.744323" elapsed="0.006963"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.751866" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:37.751448" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.752287" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:37.752045" 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-08-10T02:07:37.760161" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.759857" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.766690" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.766937" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:37.767046" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.760316" elapsed="0.006756"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.767572" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.767262" elapsed="0.000361"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.770438" 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-08-10T02:07:37.767806" elapsed="0.002730"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.773208" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.770641" elapsed="0.002640"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.770613" elapsed="0.002699"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.777621" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.777667" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:37.773538" 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-08-10T02:07:37.779478" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.777764" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.777746" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.779591" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:07:37.779868" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:37.779919" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:37.759515" elapsed="0.020428"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.784987" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.780534" elapsed="0.004500"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.780517" elapsed="0.004539"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.785660" 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-08-10T02:07:37.785207" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.786228" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.785848" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.786303" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:07:37.786500" 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-08-10T02:07:37.780173" elapsed="0.006352"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.786680" 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-08-10T02:07:37.758936" elapsed="0.028206"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.794970" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.794666" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.809959" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.811104" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:37.811926" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.795131" elapsed="0.016862"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.813016" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.812410" elapsed="0.000711"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.817841" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.813491" elapsed="0.005285"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.820628" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.818858" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.818835" elapsed="0.001878"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.843213" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.843262" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:37.820855" elapsed="0.022430"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.845236" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.843389" elapsed="0.001905"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.843367" elapsed="0.001952"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.845373" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:37.845586" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:37.845631" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:37.794273" elapsed="0.051380"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.847873" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.846256" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.846238" elapsed="0.001704"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.848540" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.848092" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.849083" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.848730" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.849159" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.849354" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:37.845904" elapsed="0.003477"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.849539" 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-08-10T02:07:37.793647" elapsed="0.056359"/>
</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-08-10T02:07:37.741052" elapsed="0.109014"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:37.734156" elapsed="0.116041"/>
</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-08-10T02:07:37.861211" 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-08-10T02:07:37.861394" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:37.861065" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:37.862014" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe16de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:37.861581" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.862496" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:37.862194" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.862941" 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-08-10T02:07:37.862673" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.863402" 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-08-10T02:07:37.863115" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.864381" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:37.863577" elapsed="0.000836"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.864907" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.864571" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.865489" 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-08-10T02:07:37.865150" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.866007" 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-08-10T02:07:37.865683" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.866527" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.866198" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.867036" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.866721" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.867724" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe16de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.867228" 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-08-10T02:07:37.860728" elapsed="0.007098"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.868404" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:37.867996" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.868828" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:37.868587" 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-08-10T02:07:37.879889" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.879534" elapsed="0.000390"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.890915" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.891326" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:37.891538" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.880637" elapsed="0.010940"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.892452" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.891991" elapsed="0.000529"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.895805" 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-08-10T02:07:37.892722" elapsed="0.003194"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.898507" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.896042" elapsed="0.002541"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.896005" elapsed="0.002611"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.902587" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.902634" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:37.898816" elapsed="0.003840"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.904472" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.902733" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.902714" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.904588" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:37.904811" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:37.904855" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:37.879066" elapsed="0.025812"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.907282" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.905524" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.905507" elapsed="0.001860"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.907984" 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-08-10T02:07:37.907524" elapsed="0.000487"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.908538" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.908172" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.908614" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.908791" 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-08-10T02:07:37.905149" elapsed="0.003666"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.908976" 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-08-10T02:07:37.875374" elapsed="0.034090"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.917266" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.916959" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:37.925929" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:37.926622" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:37.927039" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.917441" elapsed="0.009636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.927678" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.927300" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.931187" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:37.927967" elapsed="0.004541"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.935032" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.932609" elapsed="0.002490"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.932582" elapsed="0.002548"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.961173" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:37.961220" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:37.935324" elapsed="0.025919"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:37.963116" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:37.961323" elapsed="0.001849"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.961303" elapsed="0.001894"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:37.963230" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.963441" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:37.963484" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:37.916585" elapsed="0.046922"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:37.965649" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:37.964064" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:37.964046" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.966257" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.965861" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.966810" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:37.966463" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:37.966885" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:37.967062" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:37.963722" elapsed="0.003365"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:37.967242" 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-08-10T02:07:37.915940" elapsed="0.051769"/>
</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-08-10T02:07:37.857440" elapsed="0.110326"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:37.850581" elapsed="0.117320"/>
</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-08-10T02:07:37.978844" 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-08-10T02:07:37.979003" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:37.978698" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:37.979641" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1d00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:37.979185" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.980121" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:37.979822" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.980584" 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-08-10T02:07:37.980297" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:37.981023" 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-08-10T02:07:37.980758" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:37.981957" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:37.981197" elapsed="0.000790"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.982494" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.982143" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.983051" 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-08-10T02:07:37.982726" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.983590" 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-08-10T02:07:37.983245" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.984124" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.983782" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.984819" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.984319" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.985363" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1d00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:37.985025" 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-08-10T02:07:37.978369" elapsed="0.007093"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.985991" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:37.985609" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:37.986430" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:37.986170" 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-08-10T02:07:37.994167" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:37.993867" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.000735" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.000975" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:38.001085" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:37.994322" elapsed="0.006788"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.001579" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.001300" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.003869" 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-08-10T02:07:38.001771" 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-08-10T02:07:38.006131" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.004039" elapsed="0.002159"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.004019" elapsed="0.002209"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.010544" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.010608" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:38.006443" elapsed="0.004197"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.013081" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.010743" elapsed="0.002393"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.010717" elapsed="0.002443"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.013193" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:38.013401" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:38.013445" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:37.993554" elapsed="0.019913"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.015745" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.014004" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.013987" elapsed="0.001825"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.016380" 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-08-10T02:07:38.015958" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.016913" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.016567" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.016992" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:38.017166" 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-08-10T02:07:38.013676" 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-08-10T02:07:38.017358" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:37.992984" 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-08-10T02:07:38.028577" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.028257" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.045193" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.046247" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:38.046925" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.028732" elapsed="0.018252"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.047933" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.047368" elapsed="0.000729"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.051842" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.048448" 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-08-10T02:07:38.055679" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.053233" elapsed="0.002515"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.053206" elapsed="0.002573"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.083611" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.083658" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:38.055970" elapsed="0.027712"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.085512" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.083760" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.083742" elapsed="0.001852"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.085628" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.085821" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:38.085864" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:38.027852" elapsed="0.058034"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.088018" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.086448" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.086430" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.088679" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.088261" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.089213" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.088866" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.089287" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:38.089482" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:38.086101" elapsed="0.003405"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.089661" 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-08-10T02:07:38.027213" elapsed="0.062897"/>
</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-08-10T02:07:37.975090" elapsed="0.115076"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:37.968253" elapsed="0.122025"/>
</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-08-10T02:07:38.101162" 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-08-10T02:07:38.101298" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:38.101015" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:38.101901" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec396f20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:38.101494" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.102372" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:38.102078" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.102816" 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-08-10T02:07:38.102549" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.103253" 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-08-10T02:07:38.102988" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.104128" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:38.103442" elapsed="0.000716"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.104660" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.104313" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.105211" 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-08-10T02:07:38.104891" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.105746" 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-08-10T02:07:38.105419" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.106246" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.105936" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.106774" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.106459" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.107281" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec396f20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.106966" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:38.100688" elapsed="0.006709"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.107922" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:38.107543" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.108370" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:38.108112" 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-08-10T02:07:38.116275" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.115967" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.123990" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.124305" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:38.124514" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.116449" elapsed="0.008102"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.125120" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.124771" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.128292" 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-08-10T02:07:38.125403" 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-08-10T02:07:38.130970" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.128541" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.128514" elapsed="0.002556"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.134570" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.134616" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:38.131263" elapsed="0.003375"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.136431" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.134711" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.134693" elapsed="0.001818"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.136545" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:38.136737" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:38.136780" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:38.115652" elapsed="0.021151"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.138938" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.137354" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.137320" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.139561" 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-08-10T02:07:38.139149" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.140129" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.139747" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.140207" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:38.140401" 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-08-10T02:07:38.137012" 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-08-10T02:07:38.140582" 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-08-10T02:07:38.115080" elapsed="0.025949"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.149059" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.148763" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.162280" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.163398" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:38.164051" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.149214" elapsed="0.014931"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.165107" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.164545" elapsed="0.000663"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.170805" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.165564" elapsed="0.007348"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.174744" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.172986" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.172966" elapsed="0.001849"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.205004" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.205053" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:38.174954" 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-08-10T02:07:38.206946" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.205165" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.205145" elapsed="0.001881"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.207061" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.207257" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:38.207302" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:38.148384" elapsed="0.058940"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.209523" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.207906" elapsed="0.001661"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.207888" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.210143" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.209737" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.210696" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.210346" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.210771" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.210947" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:38.207569" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.211126" 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-08-10T02:07:38.147720" elapsed="0.063874"/>
</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-08-10T02:07:38.097393" elapsed="0.114258"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:38.090521" elapsed="0.121256"/>
</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-08-10T02:07:38.222686" 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-08-10T02:07:38.222822" 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-08-10T02:07:38.222547" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:38.223422" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f290&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:38.223000" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.223879" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:38.223602" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.224361" 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-08-10T02:07:38.224054" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.224805" 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-08-10T02:07:38.224537" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.225673" 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-08-10T02:07:38.224983" elapsed="0.000721"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.226187" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.225859" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.226790" 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-08-10T02:07:38.226465" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.227306" 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-08-10T02:07:38.226983" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.227826" 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-08-10T02:07:38.227516" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.228387" 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-08-10T02:07:38.228023" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.228901" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f290&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.228585" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:38.222204" elapsed="0.006792"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.229540" 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-08-10T02:07:38.229142" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.229956" 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-08-10T02:07:38.229717" 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-08-10T02:07:38.237859" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.237559" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.243860" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.244090" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:38.244235" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.238018" elapsed="0.006245"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.244699" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.244448" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.247758" 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-08-10T02:07:38.244886" elapsed="0.003006"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.250451" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.247992" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.247966" elapsed="0.002585"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.254220" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.254266" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:38.250744" elapsed="0.003545"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.256060" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.254379" elapsed="0.001736"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.254360" elapsed="0.001778"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.256172" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:07:38.256401" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:38.256446" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:38.237227" elapsed="0.019241"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.258751" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.257013" elapsed="0.001784"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.256996" elapsed="0.001823"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.259380" 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-08-10T02:07:38.258964" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.259915" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.259569" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.259990" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:38.260166" 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-08-10T02:07:38.256680" 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-08-10T02:07:38.260392" 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-08-10T02:07:38.236674" elapsed="0.024164"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.268617" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.268295" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.284684" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.285751" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:38.286435" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.268772" elapsed="0.017726"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.287449" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.286854" elapsed="0.000697"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.293004" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.287868" elapsed="0.006057"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.295756" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.293996" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.293977" elapsed="0.001849"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.322740" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.322788" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:38.295963" elapsed="0.026848"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.327773" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.322889" elapsed="0.004947"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.322870" elapsed="0.004991"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.327901" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:07:38.328105" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:38.328149" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:38.267893" elapsed="0.060279"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.330342" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.328752" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.328734" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.330969" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.330557" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.331523" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.331157" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.331597" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.331773" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:38.328421" elapsed="0.003377"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.331952" 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-08-10T02:07:38.267264" elapsed="0.065178"/>
</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-08-10T02:07:38.218923" elapsed="0.113575"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:38.212039" elapsed="0.120584"/>
</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-08-10T02:07:38.343440" 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-08-10T02:07:38.343578" 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-08-10T02:07:38.343286" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:38.344157" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32a20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:38.343756" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.344642" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:38.344363" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.345082" 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-08-10T02:07:38.344816" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.345541" 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-08-10T02:07:38.345255" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.346380" 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-08-10T02:07:38.345715" elapsed="0.000697"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.346891" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.346564" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.347459" 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-08-10T02:07:38.347122" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.347971" 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-08-10T02:07:38.347650" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.348516" 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-08-10T02:07:38.348161" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.349026" 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-08-10T02:07:38.348710" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.349554" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32a20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.349218" 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-08-10T02:07:38.342962" elapsed="0.006687"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.350173" 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-08-10T02:07:38.349795" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.350607" 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-08-10T02:07:38.350368" 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-08-10T02:07:38.358510" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.358195" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.364619" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.364840" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:38.364968" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.358664" elapsed="0.006339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.365603" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.365221" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.368759" 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-08-10T02:07:38.365860" elapsed="0.003041"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.371450" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.368998" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.368972" elapsed="0.002576"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.374930" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.374976" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:38.371739" elapsed="0.003259"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.376785" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.375070" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.375052" elapsed="0.001818"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.376911" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:07:38.377121" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:38.377164" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:38.357884" elapsed="0.019303"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.379313" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.377739" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.377722" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.379963" 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-08-10T02:07:38.379568" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.380541" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.380148" elapsed="0.000419"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.380616" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.380791" 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-08-10T02:07:38.377414" elapsed="0.003402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.380969" 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-08-10T02:07:38.357316" elapsed="0.024114"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.389376" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.389063" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.400671" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.401733" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:38.402411" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.389531" elapsed="0.012942"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.403418" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.402825" elapsed="0.000695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.408993" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.403833" elapsed="0.006089"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.411767" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.409992" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.409974" elapsed="0.001863"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.438475" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.438522" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:38.411974" elapsed="0.026571"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.440320" elapsed="0.000077"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.438623" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.438604" elapsed="0.001853"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.440491" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.440686" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:38.440730" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:38.388690" elapsed="0.052062"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.442889" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.441297" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.441279" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.443515" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.443100" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.444049" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.443702" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.444123" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.444299" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:38.440967" elapsed="0.003357"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.444510" elapsed="0.000380"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:38.388032" elapsed="0.056920"/>
</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-08-10T02:07:38.339711" elapsed="0.105297"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:38.332893" elapsed="0.112225"/>
</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-08-10T02:07:38.455923" 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-08-10T02:07:38.456050" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.455787" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:38.456658" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b740&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:38.456226" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.457110" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:38.456835" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.457570" 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-08-10T02:07:38.457283" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.458009" 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-08-10T02:07:38.457744" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.458769" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.458181" elapsed="0.000618"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.459276" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.458952" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.459858" 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-08-10T02:07:38.459536" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.460400" 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-08-10T02:07:38.460048" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.460902" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.460592" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.461425" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.461094" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.461935" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b740&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.461618" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:38.455463" elapsed="0.006566"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.462572" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:38.462176" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.462988" level="INFO">&lt;?xml version="1.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-08-10T02:07:38.462750" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.471702" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.471404" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.477875" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.478068" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:38.478170" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.471857" elapsed="0.006339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.478626" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.478376" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.480870" 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-08-10T02:07:38.478810" elapsed="0.002152"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.483510" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.481065" elapsed="0.002515"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.481039" elapsed="0.002572"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.487799" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.487863" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:38.483803" 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-08-10T02:07:38.490005" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.487998" elapsed="0.002063"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.487972" elapsed="0.002113"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.490118" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.490309" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:38.490371" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:38.471074" elapsed="0.019321"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.492520" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.490928" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.490910" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.493130" 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-08-10T02:07:38.492732" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.493683" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.493315" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.493759" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:38.493934" 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-08-10T02:07:38.490604" elapsed="0.003355"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.494114" 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-08-10T02:07:38.470518" elapsed="0.024056"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.502505" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.502191" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.520270" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.521383" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:38.522029" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.502661" elapsed="0.019428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.523041" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.522481" elapsed="0.000660"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.527290" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.523493" elapsed="0.005108"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.531126" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.528700" elapsed="0.002494"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.528674" elapsed="0.002550"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.558407" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.558454" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:38.531445" elapsed="0.027033"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.560261" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.558557" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.558537" elapsed="0.001821"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.560394" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.560599" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:38.560647" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:38.501817" elapsed="0.058852"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.562804" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.561211" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.561193" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.563431" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.563015" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.563967" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.563619" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.564043" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.564220" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:38.560882" elapsed="0.003363"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.564426" 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-08-10T02:07:38.501189" elapsed="0.063706"/>
</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-08-10T02:07:38.452187" elapsed="0.112764"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:38.445372" elapsed="0.119691"/>
</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-08-10T02:07:38.575890" 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-08-10T02:07:38.576018" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.575755" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:38.576613" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:38.576198" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.577067" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:38.576793" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.577528" 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-08-10T02:07:38.577243" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.577965" 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-08-10T02:07:38.577701" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.578699" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.578138" elapsed="0.000592"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.579205" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.578882" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.579772" 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-08-10T02:07:38.579452" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.580285" 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-08-10T02:07:38.579964" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.580829" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.580517" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.581353" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.581023" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.581864" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.581547" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:38.575426" elapsed="0.006533"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.582503" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:38.582106" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.582919" level="INFO">&lt;?xml version="1.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-08-10T02:07:38.582681" elapsed="0.000293"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.590779" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.590481" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.597100" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.597277" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:38.597406" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.590933" elapsed="0.006499"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.597840" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.597590" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.600042" 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-08-10T02:07:38.598026" elapsed="0.002070"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.602287" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.600164" elapsed="0.002252"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.600145" elapsed="0.002307"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.606204" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.606268" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:38.602645" elapsed="0.003655"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.608818" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.606426" elapsed="0.002469"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.606400" elapsed="0.002527"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.608975" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:38.609202" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:38.609246" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:38.590148" elapsed="0.019120"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.611405" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.609820" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.609803" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.612007" 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-08-10T02:07:38.611615" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.612568" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.612192" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.612643" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:38.612820" 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-08-10T02:07:38.609496" elapsed="0.003349"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.612998" 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-08-10T02:07:38.589594" elapsed="0.023872"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.623182" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.622886" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.639368" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.640430" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:38.641123" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.623384" elapsed="0.017799"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.642135" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.641573" elapsed="0.000663"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.647812" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.642587" elapsed="0.006802"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.651202" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.649461" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.649442" elapsed="0.001830"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.727436" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.727501" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:38.651427" elapsed="0.076100"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.729567" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.727656" elapsed="0.001971"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.727624" elapsed="0.002030"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.729691" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:38.729912" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:38.729956" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:38.622513" elapsed="0.107466"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.732194" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.730619" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.730601" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.732906" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.732427" elapsed="0.000507"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.733465" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.733095" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.733540" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.733717" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:38.730235" 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-08-10T02:07:38.733898" 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-08-10T02:07:38.621880" elapsed="0.112508"/>
</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-08-10T02:07:38.572139" elapsed="0.162307"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:38.565301" elapsed="0.169271"/>
</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-08-10T02:07:38.745581" 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-08-10T02:07:38.745771" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.745434" elapsed="0.000367"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:38.746372" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037f10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:38.745952" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.746834" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:38.746554" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.747275" 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-08-10T02:07:38.747010" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.747733" 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-08-10T02:07:38.747466" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.748507" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.747908" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.749041" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.748707" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.749644" 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-08-10T02:07:38.749297" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.750163" 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-08-10T02:07:38.749835" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.750679" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.750369" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.751184" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.750871" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.751849" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037f10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.751392" elapsed="0.000499"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:38.745087" elapsed="0.006858"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.752493" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:38.752092" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.752950" level="INFO">&lt;?xml version="1.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-08-10T02:07:38.752699" 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-08-10T02:07:38.760681" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.760319" elapsed="0.000390"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.767224" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.767651" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:38.767844" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.760838" elapsed="0.007053"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.768327" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.768078" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.771157" 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-08-10T02:07:38.768533" elapsed="0.002700"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.773839" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.771327" elapsed="0.002583"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.771302" elapsed="0.002638"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.777614" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.777659" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:38.774132" elapsed="0.003550"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.779450" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.777755" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.777736" elapsed="0.001793"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.779563" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:38.779752" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:38.779795" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:38.760005" elapsed="0.019812"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.782109" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.780369" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.780351" elapsed="0.001826"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.782741" 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-08-10T02:07:38.782322" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.783274" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.782928" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.783368" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.783545" 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-08-10T02:07:38.780026" 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-08-10T02:07:38.783722" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:38.759451" elapsed="0.024713"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.791911" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.791617" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.804994" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.805941" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:38.806613" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.792064" elapsed="0.014611"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.807624" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.807030" elapsed="0.000694"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.813195" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.808039" elapsed="0.006074"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.815942" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.814183" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.814164" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.841972" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.842020" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:38.816149" elapsed="0.025895"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.843839" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.842122" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.842103" elapsed="0.001816"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.843952" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:38.844144" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:38.844187" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:38.791226" elapsed="0.052983"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.846410" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.844801" elapsed="0.001655"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.844783" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.847025" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.846625" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.847579" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.847212" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.847654" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.847831" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:38.844443" 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-08-10T02:07:38.848010" 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-08-10T02:07:38.790620" elapsed="0.057850"/>
</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-08-10T02:07:38.741823" elapsed="0.106702"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:38.734969" elapsed="0.113668"/>
</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-08-10T02:07:38.859445" 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-08-10T02:07:38.859574" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.859291" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:38.860162" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88a90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:38.859752" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.860633" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:38.860356" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.861104" 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-08-10T02:07:38.860838" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.861567" 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-08-10T02:07:38.861277" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.862438" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.861739" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.862948" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.862619" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.863527" 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-08-10T02:07:38.863181" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.864041" 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-08-10T02:07:38.863719" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.864561" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.864230" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.865083" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.864768" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.865619" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88a90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.865275" 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-08-10T02:07:38.858965" elapsed="0.006750"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.866236" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:38.865859" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.866672" level="INFO">&lt;?xml version="1.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-08-10T02:07:38.866433" 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-08-10T02:07:38.874545" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.874230" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.881703" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.881926" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:38.882036" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.874701" elapsed="0.007360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.882498" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.882219" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.884810" 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-08-10T02:07:38.882719" elapsed="0.002152"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.887004" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.884945" elapsed="0.002127"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.884923" elapsed="0.002180"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.891638" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.891702" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:38.887295" elapsed="0.004438"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.894148" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.891837" elapsed="0.002367"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.891811" elapsed="0.002417"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.894262" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.894478" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:38.894522" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:38.873917" elapsed="0.020627"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.896818" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.895079" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.895061" elapsed="0.001825"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.897447" 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-08-10T02:07:38.897031" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.897988" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.897635" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.898063" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.898240" 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-08-10T02:07:38.894753" elapsed="0.003511"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.898435" 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-08-10T02:07:38.873368" elapsed="0.025513"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.906604" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.906290" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:38.921153" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:38.922225" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:38.922903" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.906760" elapsed="0.016203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.923940" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.923318" elapsed="0.000723"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.929688" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:38.924398" elapsed="0.006336"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.932542" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.930805" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.930786" elapsed="0.001827"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.962367" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:38.962417" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:38.932750" elapsed="0.029690"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:38.964231" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:38.962522" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.962503" elapsed="0.001810"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:38.964365" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:38.964565" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:38.964610" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:38.905919" elapsed="0.058714"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:38.966782" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:38.965197" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:38.965179" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.967414" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.966995" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.967952" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:38.967602" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:38.968027" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:38.968203" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:38.964866" elapsed="0.003362"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:38.968400" 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-08-10T02:07:38.905301" elapsed="0.063577"/>
</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-08-10T02:07:38.855714" elapsed="0.113220"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:38.848892" elapsed="0.120155"/>
</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-08-10T02:07:38.979859" 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-08-10T02:07:38.979992" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.979723" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:38.980594" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8ba60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:38.980170" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.981067" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:38.980772" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.981531" 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-08-10T02:07:38.981243" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:38.981971" 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-08-10T02:07:38.981704" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:38.982850" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.982144" elapsed="0.000736"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.983383" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.983037" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.983938" 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-08-10T02:07:38.983616" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.984472" 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-08-10T02:07:38.984130" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.985006" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:38.984664" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.985533" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:38.985201" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.986042" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8ba60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:38.985727" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:38.979396" elapsed="0.006741"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.986677" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:38.986281" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:38.987094" level="INFO">&lt;?xml version="1.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-08-10T02:07:38.986855" 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-08-10T02:07:38.996815" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:38.996519" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.003543" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.003770" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:39.003886" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:38.996983" elapsed="0.006938"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.004518" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.004144" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.007723" 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-08-10T02:07:39.004823" elapsed="0.002984"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.010329" elapsed="0.000044"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.007904" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.007876" elapsed="0.002575"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.014694" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.014740" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:39.010644" elapsed="0.004119"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.016515" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.014836" elapsed="0.001735"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.014818" elapsed="0.001776"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.016627" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.016818" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:39.016875" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:38.996189" elapsed="0.020710"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.019021" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.017451" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.017434" elapsed="0.001654"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.019660" 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-08-10T02:07:39.019232" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.020189" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.019846" elapsed="0.000369"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.020263" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.020456" 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-08-10T02:07:39.017108" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.020635" 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-08-10T02:07:38.995633" elapsed="0.025471"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.029025" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.028704" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.041140" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.042234" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:39.042982" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.029179" elapsed="0.013864"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.043987" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.043429" elapsed="0.000657"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.049693" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.044438" elapsed="0.006610"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.053604" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.051145" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.051119" elapsed="0.002583"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.079509" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.079555" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:39.053890" elapsed="0.025688"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.081405" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.079655" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.079637" elapsed="0.001859"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.081531" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.081722" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:39.081765" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:39.028313" elapsed="0.053474"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.083941" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.082328" elapsed="0.001658"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.082309" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.084570" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.084153" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.085122" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.084759" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.085197" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.085392" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:39.082000" 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-08-10T02:07:39.085574" 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-08-10T02:07:39.027701" elapsed="0.058317"/>
</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-08-10T02:07:38.976114" elapsed="0.109960"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:38.969300" elapsed="0.116883"/>
</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-08-10T02:07:39.096970" 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-08-10T02:07:39.097100" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:39.096807" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:39.097706" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3a10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:39.097279" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.098160" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:39.097885" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.098620" 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-08-10T02:07:39.098351" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.099059" 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-08-10T02:07:39.098795" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.099953" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:39.099231" elapsed="0.000753"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.100475" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.100135" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.101042" 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-08-10T02:07:39.100710" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.101577" 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-08-10T02:07:39.101233" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.102075" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:39.101766" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.102602" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:39.102267" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.103109" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3a10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.102794" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:39.096482" elapsed="0.006722"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.103748" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:39.103365" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.104165" level="INFO">&lt;?xml version="1.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-08-10T02:07:39.103927" 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-08-10T02:07:39.112058" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.111762" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.118003" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.118228" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:39.118360" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.112215" elapsed="0.006172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.118796" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.118546" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.121115" 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-08-10T02:07:39.119026" 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-08-10T02:07:39.123438" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.121244" elapsed="0.002262"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.121226" elapsed="0.002310"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.128110" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.128174" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:39.123727" elapsed="0.004479"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.130517" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.128308" elapsed="0.002265"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.128283" elapsed="0.002314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.130631" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.130822" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:39.130865" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:39.111449" elapsed="0.019438"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.134919" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.131440" elapsed="0.003528"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.131422" elapsed="0.003570"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.135553" 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-08-10T02:07:39.135138" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.136090" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.135740" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.136165" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.136358" 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-08-10T02:07:39.131096" elapsed="0.005288"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.136539" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:39.110878" elapsed="0.026130"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.144773" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.144478" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.154063" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.155135" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:39.155810" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.144926" elapsed="0.010944"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.156824" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.156218" elapsed="0.000706"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.162512" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.157264" elapsed="0.007333"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.167156" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.164755" elapsed="0.002450"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.164713" elapsed="0.002514"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.196160" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.196206" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:39.167379" 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-08-10T02:07:39.198031" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.196307" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.196288" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.198145" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.198352" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:39.198399" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:39.144088" elapsed="0.054333"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.200532" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.198960" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.198942" elapsed="0.001656"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.201153" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.200743" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.201709" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.201358" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.201784" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.201959" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:39.198633" elapsed="0.003351"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.202138" 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-08-10T02:07:39.143482" elapsed="0.059118"/>
</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-08-10T02:07:39.093234" elapsed="0.109422"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:39.086434" elapsed="0.116331"/>
</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-08-10T02:07:39.213536" 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-08-10T02:07:39.213662" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:39.213399" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:39.214214" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe173d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:39.213840" elapsed="0.000402"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.214683" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:39.214408" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.215121" 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-08-10T02:07:39.214857" elapsed="0.000289"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.215577" 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-08-10T02:07:39.215293" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.216277" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:39.215749" elapsed="0.000558"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.216803" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.216480" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.217382" 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-08-10T02:07:39.217045" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.217895" 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-08-10T02:07:39.217573" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.218407" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:39.218083" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.218911" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:39.218599" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.219434" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe173d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.219101" 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-08-10T02:07:39.213056" elapsed="0.006474"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.220052" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:39.219674" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.220484" level="INFO">&lt;?xml version="1.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-08-10T02:07:39.220227" 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-08-10T02:07:39.228313" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.228019" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.234913" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.235092" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:39.235195" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.228484" elapsed="0.006736"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.235652" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.235401" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.241556" 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-08-10T02:07:39.235836" elapsed="0.005799"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.244151" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.241729" elapsed="0.002491"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.241704" elapsed="0.002610"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.247530" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.247575" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:39.244536" elapsed="0.003062"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.249369" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.247671" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.247653" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.249481" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.249671" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:39.249714" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:39.227708" elapsed="0.022028"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.251921" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.250272" elapsed="0.001705"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.250254" elapsed="0.001750"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.252574" 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-08-10T02:07:39.252160" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.253131" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.252758" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.253206" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.253400" 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-08-10T02:07:39.249943" elapsed="0.003483"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.253579" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:39.227136" elapsed="0.026885"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.261781" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.261486" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.274788" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.275872" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:39.276586" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.261934" elapsed="0.014714"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.277633" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.277000" elapsed="0.000734"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.282544" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.278050" elapsed="0.005426"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.285298" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.283547" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.283529" elapsed="0.001855"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.315159" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.315206" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:39.285522" elapsed="0.029707"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.317026" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.315306" elapsed="0.001775"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.315287" elapsed="0.001832"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.317154" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.317361" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:39.317407" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:39.261092" elapsed="0.056337"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.319549" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.317970" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.317952" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.320149" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.319759" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.320703" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.320351" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.320778" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.320955" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:39.317641" elapsed="0.003339"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.321162" 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-08-10T02:07:39.260458" elapsed="0.061166"/>
</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-08-10T02:07:39.209790" elapsed="0.111889"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:39.202998" elapsed="0.118791"/>
</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-08-10T02:07:39.332433" 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-08-10T02:07:39.332572" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:39.332280" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:39.333177" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:39.332749" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.333651" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:39.333374" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.334091" 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-08-10T02:07:39.333826" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.334548" 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-08-10T02:07:39.334264" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.335454" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:39.334721" elapsed="0.000763"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.335960" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.335637" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.336528" 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-08-10T02:07:39.336191" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.337042" 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-08-10T02:07:39.336720" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.337598" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:39.337262" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.338105" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:39.337792" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.338631" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.338297" 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-08-10T02:07:39.331952" elapsed="0.006775"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.339252" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:39.338873" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.339687" level="INFO">&lt;?xml version="1.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-08-10T02:07:39.339447" 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-08-10T02:07:39.347556" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.347239" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.353948" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.354261" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:39.354443" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.347710" elapsed="0.006770"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.355092" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.354744" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.358270" 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-08-10T02:07:39.355380" elapsed="0.003000"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.360895" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.358477" elapsed="0.002485"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.358451" elapsed="0.002541"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.365645" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.365708" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:39.361202" elapsed="0.004538"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.367563" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.365843" elapsed="0.001775"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.365818" elapsed="0.001824"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.367675" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.367865" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:39.367908" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:39.346927" elapsed="0.021004"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.370223" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.368483" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.368466" elapsed="0.001825"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.370847" 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-08-10T02:07:39.370453" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.371397" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.371033" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.371473" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.371648" 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-08-10T02:07:39.368141" 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-08-10T02:07:39.371825" 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-08-10T02:07:39.346376" elapsed="0.025896"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.379994" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.379700" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.392451" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.393535" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:39.394191" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.380147" elapsed="0.014104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.395199" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.394640" elapsed="0.000659"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.400878" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.395649" elapsed="0.008252"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.405725" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.403974" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.403955" elapsed="0.001840"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.435269" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.435316" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:39.405937" elapsed="0.029418"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.437132" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.435435" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.435417" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.437260" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.437471" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:39.437516" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:39.379310" elapsed="0.058228"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.439686" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.438090" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.438072" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.440297" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.439899" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.440861" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.440511" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.440939" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:39.441118" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:39.437755" elapsed="0.003389"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.441324" 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-08-10T02:07:39.378704" elapsed="0.063085"/>
</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-08-10T02:07:39.328700" elapsed="0.113145"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:39.321953" elapsed="0.120002"/>
</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-08-10T02:07:39.452770" 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-08-10T02:07:39.452934" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:39.452635" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:39.453639" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21cc70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:39.453113" elapsed="0.000554"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.454094" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:39.453818" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.454556" 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-08-10T02:07:39.454269" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.454995" 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-08-10T02:07:39.454729" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.455802" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:39.455168" elapsed="0.000664"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.456308" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.455984" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.456882" 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-08-10T02:07:39.456560" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.457447" 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-08-10T02:07:39.457075" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.457952" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.457640" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.458479" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.458148" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.458988" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21cc70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.458673" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:39.452291" elapsed="0.006793"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.459630" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:39.459230" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.460050" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:39.459808" 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-08-10T02:07:39.467931" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.467636" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.474279" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.474506" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:39.474612" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.468085" elapsed="0.006553"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.475092" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.474793" elapsed="0.000361"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.478220" 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-08-10T02:07:39.475374" elapsed="0.002997"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.480891" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.478470" elapsed="0.002490"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.478443" elapsed="0.002548"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.485121" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.485185" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:39.481181" elapsed="0.004035"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.487222" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.485387" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.485359" elapsed="0.001941"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.487349" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.487542" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:39.487586" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:39.467304" elapsed="0.020304"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.489752" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.488140" elapsed="0.001657"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.488123" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.490375" 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-08-10T02:07:39.489964" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.490910" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.490563" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.490985" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.491161" 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-08-10T02:07:39.487816" elapsed="0.003370"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.491355" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:39.466752" elapsed="0.025044"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.499711" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.499416" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.516931" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.518022" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:39.518718" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.499865" elapsed="0.018914"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.519738" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.519132" elapsed="0.000707"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.525444" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.520151" elapsed="0.006478"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.528432" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.526699" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.526680" elapsed="0.001823"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.556055" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.556101" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:39.528639" elapsed="0.027485"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.557963" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.556202" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.556183" elapsed="0.001860"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.558077" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.558271" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:39.558315" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:39.499027" elapsed="0.059327"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.560616" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.559025" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.559006" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.561221" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.560826" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.561786" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.561438" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.561860" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.562036" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:39.558569" elapsed="0.003492"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.562214" 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-08-10T02:07:39.498413" elapsed="0.064265"/>
</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-08-10T02:07:39.449003" elapsed="0.113732"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:39.442202" elapsed="0.120646"/>
</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-08-10T02:07:39.576570" 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-08-10T02:07:39.576730" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:39.576434" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:39.577295" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeed40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:39.576908" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.577779" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:39.577502" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.578215" 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-08-10T02:07:39.577952" elapsed="0.000288"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.578670" 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-08-10T02:07:39.578404" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.579451" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:39.578842" elapsed="0.000640"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.579964" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.579634" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.580546" 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-08-10T02:07:39.580205" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.581063" 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-08-10T02:07:39.580738" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.581611" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.581254" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.582119" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.581805" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.582647" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeed40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.582312" 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-08-10T02:07:39.576090" elapsed="0.006653"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.583274" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:39.582888" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.583707" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:39.583469" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.591611" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.591293" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.598034" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.598231" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:39.598357" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.591765" elapsed="0.006620"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.598795" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.598544" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.601010" 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-08-10T02:07:39.598980" elapsed="0.002118"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.603376" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.601168" elapsed="0.002278"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.601149" elapsed="0.002328"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.607439" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.607503" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:39.603669" elapsed="0.003865"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.610001" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.607637" elapsed="0.002420"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.607612" elapsed="0.002468"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.610115" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.610306" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:39.610367" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:39.590980" elapsed="0.019412"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.612526" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.610930" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.610913" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.613130" 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-08-10T02:07:39.612738" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.613698" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.613315" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.613775" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.613951" 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-08-10T02:07:39.610602" elapsed="0.003376"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.614134" 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-08-10T02:07:39.590424" elapsed="0.024173"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.622554" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.622238" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.638221" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.639270" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:39.639951" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.622709" elapsed="0.017303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.640979" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.640419" elapsed="0.000661"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.646295" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.641458" elapsed="0.005758"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.649033" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.647286" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.647267" elapsed="0.001836"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.679936" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.679982" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:39.649240" elapsed="0.030766"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.681811" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.680084" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.680065" elapsed="0.001826"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.681926" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.682120" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:39.682163" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:39.621865" 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-08-10T02:07:39.684347" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.682748" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.682730" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.684956" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.684562" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.685537" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.685142" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.685613" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.685790" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:39.682420" elapsed="0.003395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.685971" 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-08-10T02:07:39.621223" elapsed="0.065211"/>
</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-08-10T02:07:39.572803" elapsed="0.113688"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:39.563085" elapsed="0.123519"/>
</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-08-10T02:07:39.697490" 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-08-10T02:07:39.697619" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:39.697327" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:39.698191" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff305e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:39.697798" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.698664" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:39.698388" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.699104" 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-08-10T02:07:39.698839" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.699561" 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-08-10T02:07:39.699277" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.700361" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:39.699733" elapsed="0.000659"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.700868" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.700544" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.701466" 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-08-10T02:07:39.701101" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.701986" 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-08-10T02:07:39.701662" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.702504" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:39.702177" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.703008" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:39.702696" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.703534" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff305e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.703201" 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-08-10T02:07:39.696997" elapsed="0.006632"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.704152" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:39.703774" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.704585" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:39.704345" 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-08-10T02:07:39.712437" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.712121" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.718954" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.719228" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:39.719403" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.712590" elapsed="0.006851"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.720007" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.719661" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.723135" 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-08-10T02:07:39.720266" elapsed="0.002991"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.729738" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.723377" elapsed="0.006429"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.723327" elapsed="0.006510"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.732781" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.732827" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:39.730025" elapsed="0.002825"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.734612" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.732921" elapsed="0.001746"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.732903" elapsed="0.001788"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.734724" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.734916" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:39.734969" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:39.711810" elapsed="0.023187"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.737129" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.735570" elapsed="0.001604"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.735552" elapsed="0.001644"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.737776" 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-08-10T02:07:39.737354" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.738308" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.737960" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.738401" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.738577" 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-08-10T02:07:39.735221" elapsed="0.003381"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.738755" 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-08-10T02:07:39.711243" elapsed="0.027966"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.747117" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.746823" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.760305" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.761389" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:39.762071" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.747272" elapsed="0.014860"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.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-08-10T02:07:39.762523" elapsed="0.000660"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.768745" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.763532" elapsed="0.006962"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.772292" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.770568" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.770549" elapsed="0.001837"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.802562" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.802609" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:39.772524" elapsed="0.030107"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.804427" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.802710" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.802691" elapsed="0.001817"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.804541" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.804733" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:39.804776" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:39.746450" elapsed="0.058349"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.806938" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.805355" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.805321" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.807566" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.807150" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.808102" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.807754" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.808177" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.808368" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:39.805011" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.808551" elapsed="0.000380"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:39.745823" elapsed="0.063170"/>
</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-08-10T02:07:39.693700" elapsed="0.115349"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:39.686852" elapsed="0.122309"/>
</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-08-10T02:07:39.820004" 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-08-10T02:07:39.820134" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:39.819865" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:39.820731" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e49a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:39.820312" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.821181" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:39.820909" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.821652" 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-08-10T02:07:39.821373" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.822092" 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-08-10T02:07:39.821827" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.822934" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:39.822264" elapsed="0.000700"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.823458" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.823116" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.824010" 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-08-10T02:07:39.823691" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.824541" 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-08-10T02:07:39.824201" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.825037" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.824730" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.825594" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.825229" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.826105" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e49a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.825789" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:39.819538" elapsed="0.006661"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.826743" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:39.826363" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.827159" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:39.826921" 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-08-10T02:07:39.835043" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.834745" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.841195" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.841425" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:39.841532" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.835198" elapsed="0.006386"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.842032" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.841744" elapsed="0.000350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.845153" 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-08-10T02:07:39.842289" elapsed="0.002987"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.847867" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.845396" elapsed="0.002538"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.845369" elapsed="0.002595"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.851491" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.851536" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:39.848154" elapsed="0.003404"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.853312" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.851631" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.851613" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.853441" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.853643" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:39.853687" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:39.834432" elapsed="0.019277"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.856021" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.854287" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.854270" elapsed="0.001819"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.856646" 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-08-10T02:07:39.856233" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.857172" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.856829" elapsed="0.000369"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.857247" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.857441" 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-08-10T02:07:39.853931" elapsed="0.003536"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.857647" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:39.833861" 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-08-10T02:07:39.865852" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.865532" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.878618" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.879280" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:39.879973" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.866005" elapsed="0.014027"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.880983" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.880420" elapsed="0.000662"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.886698" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.881431" elapsed="0.007325"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.891265" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.888911" elapsed="0.002403"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.888870" elapsed="0.002487"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.932549" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.932597" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:39.891497" elapsed="0.041123"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.934441" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.932706" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.932685" elapsed="0.001837"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.934556" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.934751" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:39.934794" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:39.865144" elapsed="0.069672"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.936952" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.935385" elapsed="0.001612"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.935367" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.937583" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.937163" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.938148" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.937799" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.938223" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:39.938419" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:39.935037" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.938599" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:39.864541" elapsed="0.074504"/>
</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-08-10T02:07:39.816267" elapsed="0.122834"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:39.809442" elapsed="0.129773"/>
</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-08-10T02:07:39.950040" 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-08-10T02:07:39.950192" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:39.949904" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:39.950776" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d85e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:39.950387" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.951228" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:39.950953" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.951688" 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-08-10T02:07:39.951419" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:39.952130" 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-08-10T02:07:39.951861" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.952919" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:39.952302" elapsed="0.000647"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.953445" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.953101" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.954027" 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-08-10T02:07:39.953703" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.954560" 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-08-10T02:07:39.954217" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.955060" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:39.954751" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.955610" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:39.955252" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.956126" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d85e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:39.955809" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:39.949565" elapsed="0.006654"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.956760" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:39.956382" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.957173" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&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-08-10T02:07:39.956936" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.965048" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.964749" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:39.970741" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:39.970960" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:39.971108" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.965203" elapsed="0.005940"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.971741" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:39.971394" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.974851" 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-08-10T02:07:39.971997" elapsed="0.002992"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.977534" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.975086" elapsed="0.002515"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.975060" elapsed="0.002572"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:39.981530" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:39.981575" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:39.977841" elapsed="0.003757"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:39.983376" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:39.981684" elapsed="0.001749"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.981652" elapsed="0.001804"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:39.983490" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:07:39.983681" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:39.983725" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:39.964437" elapsed="0.019310"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:39.985886" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:39.984285" elapsed="0.001646"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:39.984268" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.986509" 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-08-10T02:07:39.986097" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.987038" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:39.986693" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:39.987113" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:39.987287" 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-08-10T02:07:39.983959" elapsed="0.003354"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:39.987486" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:39.963871" elapsed="0.024057"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:39.995866" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:39.995571" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.008082" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.008752" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:40.009151" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:39.996021" elapsed="0.013168"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.009801" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.009433" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.013277" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.010062" elapsed="0.004530"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.017110" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.014691" elapsed="0.002486"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.014665" elapsed="0.002543"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.042821" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.042868" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:40.017422" elapsed="0.025469"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.044671" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.042968" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.042950" elapsed="0.001801"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.044785" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.044976" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:40.045020" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:39.995181" elapsed="0.049862"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.047182" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.045599" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.045581" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.047807" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.047409" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.048360" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.047994" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.048436" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.048612" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:40.045254" elapsed="0.003383"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.048793" 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-08-10T02:07:39.994571" elapsed="0.054666"/>
</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-08-10T02:07:39.946344" elapsed="0.102949"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:39.939533" elapsed="0.109888"/>
</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-08-10T02:07:40.060250" 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-08-10T02:07:40.060397" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.060116" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:40.060985" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:40.060575" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.061456" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:40.061162" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.061910" 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-08-10T02:07:40.061631" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.062370" 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-08-10T02:07:40.062085" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.063258" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.062546" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.063787" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.063460" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.064354" 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-08-10T02:07:40.064019" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.064873" 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-08-10T02:07:40.064549" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.065389" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.065063" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.065930" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.065585" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.066459" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.066123" 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-08-10T02:07:40.059785" elapsed="0.006770"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.067079" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:40.066700" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.067515" level="INFO">&lt;?xml version="1.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-08-10T02:07:40.067256" 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-08-10T02:07:40.075388" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.075073" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.082583" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.082805" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:40.082915" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.075547" elapsed="0.007396"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.083367" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.083101" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.085655" 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-08-10T02:07:40.083591" elapsed="0.002124"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.087807" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.085817" elapsed="0.002057"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.085797" elapsed="0.002109"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.092426" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.092493" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:40.088098" elapsed="0.004427"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.095046" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.092629" elapsed="0.002473"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.092603" elapsed="0.002522"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.095160" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.095368" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:40.095414" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:40.074758" elapsed="0.020679"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.097709" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.095972" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.095954" elapsed="0.001834"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.098351" 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-08-10T02:07:40.097939" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.098888" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.098541" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.098975" elapsed="0.000034"/>
</return>
<msg time="2026-08-10T02:07:40.099165" 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-08-10T02:07:40.095646" elapsed="0.003545"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.099361" 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-08-10T02:07:40.074192" elapsed="0.025613"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.107611" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.107278" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.121938" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.123011" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:40.123685" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.107765" elapsed="0.015982"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.124709" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.124104" elapsed="0.000707"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.130450" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.125130" 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-08-10T02:07:40.133459" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.131711" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.131692" elapsed="0.001837"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.214569" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.214634" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:40.133665" elapsed="0.080994"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.216616" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.214783" elapsed="0.001893"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.214752" elapsed="0.001951"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.216742" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:40.216958" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:40.217002" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:40.106864" elapsed="0.110160"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.219262" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.217668" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.217650" elapsed="0.001694"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.219960" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.219496" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.220521" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.220147" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.220596" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.220772" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:40.217284" elapsed="0.003514"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.220952" 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-08-10T02:07:40.106245" elapsed="0.115194"/>
</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-08-10T02:07:40.056525" elapsed="0.164973"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:40.049659" elapsed="0.171968"/>
</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-08-10T02:07:40.232536" 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-08-10T02:07:40.232707" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.232390" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:40.233346" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:40.232889" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.233810" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:40.233529" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.234289" 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-08-10T02:07:40.234020" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.234749" 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-08-10T02:07:40.234482" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.235844" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.234924" elapsed="0.000951"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.236380" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.236030" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.236952" 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-08-10T02:07:40.236632" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.237479" 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-08-10T02:07:40.237142" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.237992" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.237670" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.238519" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.238186" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.239025" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21f830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.238711" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:40.232044" elapsed="0.007077"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.239664" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:40.239265" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.240082" level="INFO">&lt;?xml version="1.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-08-10T02:07:40.239841" 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-08-10T02:07:40.247793" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.247488" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.254685" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.254967" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:40.255077" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.247948" elapsed="0.007155"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.255566" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.255292" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.257821" 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-08-10T02:07:40.255754" 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-08-10T02:07:40.260046" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.257986" elapsed="0.002127"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.257967" elapsed="0.002176"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.264575" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.264639" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:40.260355" elapsed="0.004316"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.267248" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.264773" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.264748" elapsed="0.002580"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.267378" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.267570" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:40.267612" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:40.247158" elapsed="0.020476"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.269753" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.268166" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.268149" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.270387" 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-08-10T02:07:40.269974" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.270921" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.270575" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.270995" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.271170" 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-08-10T02:07:40.267840" elapsed="0.003355"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.271362" 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-08-10T02:07:40.246609" elapsed="0.025197"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.279527" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.279214" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.290393" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.290851" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:40.291435" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.279680" elapsed="0.011816"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.292439" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.291848" elapsed="0.000693"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.298109" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;470000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;124000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;509000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;159000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;199000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;236000000&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;691000000&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;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;731000000&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;312000000&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;765000000&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;347000000&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;5&lt;/second&gt;&lt;nanosecond&gt;798000000&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;5&lt;/second&gt;&lt;nanosecond&gt;831000000&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;4&lt;/second&gt;&lt;nanosecond&gt;837000000&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;146000000&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;3&lt;/second&gt;&lt;nanosecond&gt;995000000&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;184000000&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;26000000&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;215000000&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;60000000&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;253000000&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;292000000&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;328000000&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;367000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;404000000&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;436000000&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;461000000&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;496000000&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;2000000&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;529000000&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;802000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;568000000&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;609000000&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;649000000&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;687000000&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;838000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;721000000&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;3&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;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;37000000&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;758000000&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;3&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;72000000&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;4&lt;/second&gt;&lt;nanosecond&gt;798000000&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;3&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;3&lt;/second&gt;&lt;nanosecond&gt;967000000&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;4&lt;/second&gt;&lt;nanosecond&gt;877000000&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;4&lt;/second&gt;&lt;nanosecond&gt;917000000&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;4&lt;/second&gt;&lt;nanosecond&gt;956000000&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;424000000&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;383000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.292851" elapsed="0.006670"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.301349" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.299592" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.299574" elapsed="0.001850"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.329776" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.329822" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:40.301561" elapsed="0.028284"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.334780" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.329922" elapsed="0.004922"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.329904" elapsed="0.004965"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.334907" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:40.335107" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:40.335151" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:40.278842" elapsed="0.056331"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.337307" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.335743" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.335725" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.337933" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.337534" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.338522" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.338153" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.338597" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.338771" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:40.335414" elapsed="0.003382"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.338951" 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-08-10T02:07:40.278217" elapsed="0.061194"/>
</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-08-10T02:07:40.228794" elapsed="0.110673"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:40.221985" elapsed="0.117596"/>
</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-08-10T02:07:40.350512" 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-08-10T02:07:40.350658" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.350373" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:40.351251" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395bc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:40.350835" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.351722" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:40.351446" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.352166" 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-08-10T02:07:40.351896" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.352623" 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-08-10T02:07:40.352355" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.355582" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.352795" elapsed="0.002818"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.356095" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.355767" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.356659" 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-08-10T02:07:40.356323" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.357168" 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-08-10T02:07:40.356848" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.357682" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.357372" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.358202" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.357874" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.358734" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395bc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.358412" 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-08-10T02:07:40.350029" elapsed="0.008801"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.359372" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:40.358976" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.359789" level="INFO">&lt;?xml version="1.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-08-10T02:07:40.359551" 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-08-10T02:07:40.367479" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.367167" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.372415" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.372642" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:40.372759" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.367633" elapsed="0.005152"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.373369" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.372994" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.376529" 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-08-10T02:07:40.373630" elapsed="0.002986"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.379144" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.376709" elapsed="0.002503"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.376684" elapsed="0.002559"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.383487" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.383532" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:40.379455" elapsed="0.004100"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.385292" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.383627" elapsed="0.001736"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.383610" elapsed="0.001777"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.385421" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.385612" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:40.385655" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:40.366850" elapsed="0.018827"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.388000" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.386257" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.386240" elapsed="0.001828"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.388625" 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-08-10T02:07:40.388213" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.389155" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.388811" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.389231" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.389425" 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-08-10T02:07:40.385885" elapsed="0.003566"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.389604" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:40.366284" elapsed="0.023789"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.397742" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.397450" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.411129" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.412195" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:40.412880" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.397895" elapsed="0.015046"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.413890" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.413292" elapsed="0.000699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.419220" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.414368" elapsed="0.005773"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.421953" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.420211" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.420192" elapsed="0.001831"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.449698" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.449745" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:40.422172" elapsed="0.027596"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.451597" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.449845" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.449827" elapsed="0.001850"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.451711" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.451903" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:40.451947" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:40.397065" elapsed="0.054907"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.454116" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.452529" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.452511" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.454741" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.454328" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.455275" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.454928" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.455368" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.455546" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:40.452184" elapsed="0.003387"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.455725" elapsed="0.000380"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:40.396463" elapsed="0.059704"/>
</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-08-10T02:07:40.346784" elapsed="0.109439"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:40.339939" elapsed="0.116409"/>
</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-08-10T02:07:40.467115" 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-08-10T02:07:40.467244" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.466982" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:40.467850" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3943b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:40.467439" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.468307" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:40.468032" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.468771" 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-08-10T02:07:40.468502" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.469210" 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-08-10T02:07:40.468944" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.470111" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.469399" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.470637" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.470294" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.471188" 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-08-10T02:07:40.470865" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.471722" 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-08-10T02:07:40.471397" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.472222" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.471913" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.472747" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.472432" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.473256" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3943b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.472940" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:40.466656" elapsed="0.006715"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.473897" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:40.473520" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.474359" level="INFO">&lt;?xml version="1.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-08-10T02:07:40.474075" 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-08-10T02:07:40.482215" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.481889" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.488323" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.488563" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:40.488669" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.482387" elapsed="0.006308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.489102" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.488850" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.496010" 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-08-10T02:07:40.489319" elapsed="0.006802"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.498722" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.496231" elapsed="0.002561"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.496204" elapsed="0.002619"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.502123" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.502171" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:40.499009" elapsed="0.003186"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.503977" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.502270" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.502251" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.504092" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.504286" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:40.504347" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:40.481577" elapsed="0.022795"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.508579" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.504934" elapsed="0.003691"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.504917" elapsed="0.003730"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.509210" 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-08-10T02:07:40.508792" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.509764" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.509414" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.509838" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.510016" 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-08-10T02:07:40.504593" elapsed="0.005448"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.510207" 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-08-10T02:07:40.481011" elapsed="0.029659"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.518438" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.518112" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.531649" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.532298" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:40.532733" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.518591" elapsed="0.014179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.533360" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.532990" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.536852" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.533619" elapsed="0.004561"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.540732" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.538280" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.538254" elapsed="0.002575"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.570018" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.570066" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:40.541020" 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-08-10T02:07:40.571903" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.570192" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.570148" elapsed="0.001835"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.572016" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.572207" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:40.572250" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:40.517742" elapsed="0.054530"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.574456" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.572859" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.572841" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.575065" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.574669" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.575621" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.575253" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.575696" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.575872" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:40.572529" elapsed="0.003368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.576052" 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-08-10T02:07:40.517118" elapsed="0.059395"/>
</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-08-10T02:07:40.463393" elapsed="0.113176"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:40.456586" elapsed="0.120094"/>
</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-08-10T02:07:40.587505" 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-08-10T02:07:40.587638" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.587368" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:40.588233" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395120&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:40.587817" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.588703" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:40.588428" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.589144" 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-08-10T02:07:40.588878" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.589599" 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-08-10T02:07:40.589317" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.590501" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.589771" elapsed="0.000761"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.591009" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.590686" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.591581" 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-08-10T02:07:40.591239" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.592093" 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-08-10T02:07:40.591772" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.592612" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.592283" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.593119" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.592806" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.593647" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395120&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.593313" 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-08-10T02:07:40.587028" elapsed="0.006714"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.594301" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:40.593891" elapsed="0.000456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.594740" level="INFO">&lt;?xml version="1.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-08-10T02:07:40.594499" 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-08-10T02:07:40.602605" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.602288" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.608402" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.608621" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:40.608728" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.602761" elapsed="0.005992"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.609161" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.608909" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.611628" 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-08-10T02:07:40.609397" elapsed="0.002315"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.614238" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.611806" elapsed="0.002501"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.611780" elapsed="0.002579"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.618855" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.618919" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:40.614552" elapsed="0.004399"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.620726" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.619025" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.619008" elapsed="0.001796"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.620837" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.621027" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:40.621070" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:40.601948" 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-08-10T02:07:40.623391" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.621644" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.621627" elapsed="0.001832"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.623996" 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-08-10T02:07:40.623604" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.624545" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.624181" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.624619" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.624795" 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-08-10T02:07:40.621300" elapsed="0.003520"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.624971" 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-08-10T02:07:40.601397" elapsed="0.024033"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.633170" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.632877" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.644831" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.645906" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:40.646613" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.633322" elapsed="0.013351"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.647620" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.647023" elapsed="0.000698"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.653260" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.648034" elapsed="0.010072"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.659962" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.658189" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.658165" elapsed="0.001867"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.689225" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.689271" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:40.660179" elapsed="0.029115"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.691078" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.689389" elapsed="0.001745"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.689369" elapsed="0.001789"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.691191" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:07:40.691398" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:40.691442" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:40.632503" elapsed="0.058962"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.693586" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.692006" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.691988" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.694189" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.693796" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.694820" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.694425" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.694896" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.695078" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:40.691677" 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-08-10T02:07:40.695256" 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-08-10T02:07:40.631878" elapsed="0.063841"/>
</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-08-10T02:07:40.583762" elapsed="0.112013"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:40.576933" elapsed="0.118955"/>
</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-08-10T02:07:40.706684" 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-08-10T02:07:40.706825" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.706540" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:40.707450" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe14220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:40.707001" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.707903" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:40.707627" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.708365" 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-08-10T02:07:40.708082" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.708805" 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-08-10T02:07:40.708540" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.709700" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.708977" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.710207" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.709883" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.710805" 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-08-10T02:07:40.710483" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.711320" 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-08-10T02:07:40.710997" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.711841" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.711528" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.712367" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.712034" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.712877" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe14220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.712561" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:40.706186" elapsed="0.006785"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.713511" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:40.713116" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.713928" level="INFO">&lt;?xml version="1.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-08-10T02:07:40.713689" 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-08-10T02:07:40.721895" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.721602" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.728303" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.728547" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:40.728655" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.722050" elapsed="0.006630"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.729151" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.728837" elapsed="0.000376"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.732395" 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-08-10T02:07:40.729488" elapsed="0.002992"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.735001" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.732575" elapsed="0.002494"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.732550" elapsed="0.002549"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.739474" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.739520" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:40.735291" elapsed="0.004252"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.741299" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.739617" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.739599" elapsed="0.001796"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.741429" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.741622" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:40.741667" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:40.721273" elapsed="0.020416"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.743826" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.742226" elapsed="0.001646"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.742208" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.744449" 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-08-10T02:07:40.744037" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.744982" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.744636" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.745057" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.745233" 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-08-10T02:07:40.741899" elapsed="0.003359"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.745430" 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-08-10T02:07:40.720716" elapsed="0.025160"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.753804" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.753509" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.763012" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.763498" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:40.763786" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.753957" elapsed="0.009856"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.764578" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.763980" elapsed="0.000700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.770212" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.764994" elapsed="0.007296"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.775721" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.772479" elapsed="0.003291"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.772437" elapsed="0.003355"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.804116" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.804164" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:40.775928" elapsed="0.028260"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.805980" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.804267" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.804248" elapsed="0.001813"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.806095" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.806290" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:40.806351" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:40.753118" elapsed="0.053287"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.808550" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.806958" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.806940" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.809167" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.808763" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.809719" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.809371" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.809794" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.809970" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:40.806624" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.810150" elapsed="0.003506"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:40.752508" elapsed="0.061214"/>
</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-08-10T02:07:40.702946" elapsed="0.110833"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:40.696126" elapsed="0.117775"/>
</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-08-10T02:07:40.824884" 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-08-10T02:07:40.825017" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.824748" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:40.825647" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3240&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:40.825194" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.826103" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:40.825827" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.826579" 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-08-10T02:07:40.826278" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.827020" 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-08-10T02:07:40.826753" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.827966" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.827193" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.828498" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.828150" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.829083" 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-08-10T02:07:40.828754" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.829618" 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-08-10T02:07:40.829275" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.830120" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.829809" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.830830" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.830314" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.831371" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3240&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.831031" 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-08-10T02:07:40.824420" elapsed="0.007050"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.831998" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:40.831618" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.832435" level="INFO">&lt;?xml version="1.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-08-10T02:07:40.832178" 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-08-10T02:07:40.840154" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.839857" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.846049" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.846300" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:40.846447" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.840310" elapsed="0.006164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.846916" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.846664" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.849190" 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-08-10T02:07:40.847109" elapsed="0.002142"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.851174" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.849319" elapsed="0.001923"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.849300" elapsed="0.001973"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.855788" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.855853" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:40.851490" elapsed="0.004396"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.858616" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.855988" elapsed="0.002708"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.855963" elapsed="0.002766"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.858777" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:40.859033" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:40.859076" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:40.839542" elapsed="0.019556"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.861255" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.859659" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.859641" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.861885" 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-08-10T02:07:40.861492" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.862448" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.862070" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.862524" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.862702" 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-08-10T02:07:40.859307" 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-08-10T02:07:40.862881" 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-08-10T02:07:40.838969" elapsed="0.024362"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.871130" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.870838" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.883525" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.884592" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:40.885219" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.871284" elapsed="0.013995"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.886235" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.885674" elapsed="0.000695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.891452" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.886717" elapsed="0.005664"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.894199" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.892452" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.892433" elapsed="0.001836"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.923083" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.923131" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:40.894429" elapsed="0.028725"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.924945" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.923236" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.923216" elapsed="0.001809"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.925059" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:40.925254" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:40.925298" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:40.870464" elapsed="0.054856"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.927565" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.925897" elapsed="0.001714"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.925880" elapsed="0.001753"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.928187" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.927782" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.928743" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.928393" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.928819" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.928996" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:40.925560" elapsed="0.003461"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.929175" 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-08-10T02:07:40.869825" elapsed="0.059817"/>
</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-08-10T02:07:40.821098" elapsed="0.108601"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:40.814165" elapsed="0.115647"/>
</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-08-10T02:07:40.940570" 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-08-10T02:07:40.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;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-08-10T02:07:40.940429" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:40.941310" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec3b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:40.940886" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.941787" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:40.941508" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.942235" 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-08-10T02:07:40.941967" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:40.942710" 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-08-10T02:07:40.942426" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.943661" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.942884" elapsed="0.000808"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.944171" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.943844" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.944745" 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-08-10T02:07:40.944423" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.945439" 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-08-10T02:07:40.944937" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.945955" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:40.945638" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.946513" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:40.946152" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.947035" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec3b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:40.946714" 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-08-10T02:07:40.940084" elapsed="0.007048"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.947681" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:40.947280" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.948110" level="INFO">&lt;?xml version="1.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-08-10T02:07:40.947863" 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-08-10T02:07:40.955801" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.955505" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:40.960931" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:40.961175" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:40.961284" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.955955" elapsed="0.005354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.961776" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:40.961523" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.964546" 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-08-10T02:07:40.961966" elapsed="0.002667"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.971612" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.964728" elapsed="0.006943"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.964702" elapsed="0.006992"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:40.974927" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:40.974973" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:40.971851" elapsed="0.003145"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:40.976907" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:40.975069" elapsed="0.001894"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.975051" elapsed="0.001936"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:40.977020" elapsed="0.000036"/>
</return>
<msg time="2026-08-10T02:07:40.977221" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:40.977264" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:40.955174" elapsed="0.022112"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:40.979463" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:40.977841" elapsed="0.001668"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:40.977824" elapsed="0.001707"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.980088" 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-08-10T02:07:40.979675" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.980640" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:40.980274" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:40.980715" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:40.980891" 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-08-10T02:07:40.977513" elapsed="0.003402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:40.981069" 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-08-10T02:07:40.954624" elapsed="0.026905"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:40.989273" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:40.988975" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.001889" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.002976" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:41.003659" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:40.989447" elapsed="0.014272"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.004679" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.004078" elapsed="0.000702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.010368" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.005101" 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-08-10T02:07:41.013458" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.011712" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.011693" elapsed="0.001836"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.041678" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.041725" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:41.013667" elapsed="0.028081"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.043578" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.041826" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.041808" elapsed="0.001851"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.043693" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.043886" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:41.043929" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:40.988600" elapsed="0.055351"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.046078" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.044513" elapsed="0.001610"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.044495" elapsed="0.001650"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.046719" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.046289" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.047253" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.046907" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.047327" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:07:41.047523" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:41.044164" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.047703" 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-08-10T02:07:40.987975" elapsed="0.060173"/>
</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-08-10T02:07:40.936832" elapsed="0.111372"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:40.930063" elapsed="0.118253"/>
</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-08-10T02:07:41.059089" 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-08-10T02:07:41.059220" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.058952" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:41.059839" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:41.059415" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.060293" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:41.060017" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.060755" 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-08-10T02:07:41.060488" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.061194" 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-08-10T02:07:41.060929" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.062141" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:41.061389" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.062682" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.062324" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.063233" 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-08-10T02:07:41.062912" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.063920" 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-08-10T02:07:41.063442" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.064452" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.064116" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.064967" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:41.064650" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.065498" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.065161" 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-08-10T02:07:41.058620" elapsed="0.006974"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.066121" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:41.065742" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.066560" level="INFO">&lt;?xml version="1.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-08-10T02:07:41.066301" 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-08-10T02:07:41.074243" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.073944" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.079936" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.080168" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:41.080277" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.074415" elapsed="0.005887"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.080769" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.080516" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.083138" 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-08-10T02:07:41.080962" elapsed="0.002263"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.085770" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.083320" elapsed="0.002518"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.083294" elapsed="0.002575"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.090350" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.090419" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:41.086061" elapsed="0.004390"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.092547" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.090556" elapsed="0.002047"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.090530" elapsed="0.002097"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.092661" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.092852" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:41.092896" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:41.073630" 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-08-10T02:07:41.095092" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.093507" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.093489" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.095719" 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-08-10T02:07:41.095305" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.096250" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.095904" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.096325" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:07:41.096521" 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-08-10T02:07:41.093161" elapsed="0.003385"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.096700" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:41.073064" elapsed="0.024079"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.104892" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.104598" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.116997" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.118072" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:41.118758" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.105046" elapsed="0.013772"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.119767" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.119167" elapsed="0.000702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.125428" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.120184" elapsed="0.007043"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.129059" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.127300" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.127281" elapsed="0.001849"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.157033" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.157081" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:41.129267" elapsed="0.027838"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.158925" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.157186" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.157166" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.159042" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.159236" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:41.159281" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:41.104208" elapsed="0.055095"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.161474" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.159870" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.159852" elapsed="0.001689"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.162082" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.161685" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.162632" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.162267" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.162720" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.162895" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:41.159540" 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-08-10T02:07:41.163074" 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-08-10T02:07:41.103599" elapsed="0.059936"/>
</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-08-10T02:07:41.055379" elapsed="0.108211"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:41.048576" elapsed="0.115125"/>
</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-08-10T02:07:41.174486" 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-08-10T02:07:41.174618" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.174348" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:41.175225" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:41.174822" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.175701" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:41.175420" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.176146" 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-08-10T02:07:41.175876" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.176602" 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-08-10T02:07:41.176318" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.177460" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:41.176775" elapsed="0.000716"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.177980" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.177642" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.178570" 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-08-10T02:07:41.178228" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.179143" 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-08-10T02:07:41.178774" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.179667" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.179355" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.180180" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:41.179860" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.180862" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.180390" elapsed="0.000516"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:41.174008" elapsed="0.006953"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.181510" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:41.181109" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.181939" level="INFO">&lt;?xml version="1.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-08-10T02:07:41.181691" 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-08-10T02:07:41.189673" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.189376" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.195680" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.195898" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:41.196028" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.189827" elapsed="0.006233"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.196496" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.196219" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.198784" 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-08-10T02:07:41.196687" elapsed="0.002188"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.201431" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.198956" elapsed="0.002544"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.198933" elapsed="0.002598"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.205935" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.206000" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:41.201724" elapsed="0.004308"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.208252" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.206134" elapsed="0.002173"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.206109" elapsed="0.002221"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.208382" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:41.208574" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:41.208618" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:41.189048" elapsed="0.019592"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.210926" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.209176" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.209158" elapsed="0.001836"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.211554" 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-08-10T02:07:41.211140" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.212087" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.211741" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.212162" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.212353" 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-08-10T02:07:41.208849" 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-08-10T02:07:41.212534" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:41.188502" elapsed="0.024472"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.220747" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.220451" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.234228" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.235314" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:41.235984" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.220901" elapsed="0.015142"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.236990" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.236432" elapsed="0.000658"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.242835" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.237443" elapsed="0.006497"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.245775" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.244012" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.243993" elapsed="0.001853"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.273383" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.273431" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:41.245986" elapsed="0.027468"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.276743" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.273534" elapsed="0.003267"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.273515" elapsed="0.003310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.276859" elapsed="0.000034"/>
</return>
<msg time="2026-08-10T02:07:41.277062" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:41.277106" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:41.220060" elapsed="0.057069"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.279280" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.277693" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.277675" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.279920" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.279513" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.280476" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.280109" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.280552" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.280726" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:41.277361" elapsed="0.003390"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.280907" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:41.219446" elapsed="0.061922"/>
</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-08-10T02:07:41.170760" elapsed="0.110665"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:41.163946" elapsed="0.117595"/>
</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-08-10T02:07:41.292420" 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-08-10T02:07:41.292554" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.292267" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:41.293152" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4360&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:41.292733" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.293625" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:41.293346" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.294067" 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-08-10T02:07:41.293801" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.294525" 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-08-10T02:07:41.294240" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.295476" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:41.294698" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.295989" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.295662" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.296562" 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-08-10T02:07:41.296220" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.297079" 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-08-10T02:07:41.296755" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.297599" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.297270" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.298107" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:41.297793" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.298815" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4360&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.298300" elapsed="0.000559"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:41.291938" elapsed="0.006977"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.299473" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:41.299065" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.299894" level="INFO">&lt;?xml version="1.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-08-10T02:07:41.299654" 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-08-10T02:07:41.307596" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.307280" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.313680" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.313907" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:41.314018" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.307752" elapsed="0.006295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.314518" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.314238" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.317209" 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-08-10T02:07:41.314705" elapsed="0.002589"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.319854" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.317415" elapsed="0.002507"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.317387" elapsed="0.002565"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.324398" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.324444" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:41.320143" 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-08-10T02:07:41.326373" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.324540" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.324521" elapsed="0.001932"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.326485" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:41.326676" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:41.326719" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:41.306965" elapsed="0.019776"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.328880" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.327293" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.327276" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.329504" 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-08-10T02:07:41.329093" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.330034" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.329690" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.330108" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.330282" 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-08-10T02:07:41.326963" elapsed="0.003343"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.330477" 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-08-10T02:07:41.306389" elapsed="0.024555"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.338644" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.338349" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.352212" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.353269" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:41.353919" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.338797" elapsed="0.015181"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.354946" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.354326" elapsed="0.000720"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.360367" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.355393" elapsed="0.005889"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.363104" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.361367" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.361348" elapsed="0.001827"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.393883" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.393930" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:41.363311" elapsed="0.030642"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.395752" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.394030" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.394012" elapsed="0.001820"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.395866" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.396058" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:41.396102" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:41.337963" elapsed="0.058161"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.398257" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.396684" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.396666" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.398920" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.398491" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.399479" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.399110" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.399553" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:41.399730" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:41.396352" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.399908" 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-08-10T02:07:41.337358" elapsed="0.063018"/>
</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-08-10T02:07:41.288656" elapsed="0.111778"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:41.281790" elapsed="0.118755"/>
</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-08-10T02:07:41.411329" 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-08-10T02:07:41.411474" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:41.411194" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:41.412050" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a980&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:41.411653" elapsed="0.000425"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.412519" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:41.412226" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.412959" 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-08-10T02:07:41.412694" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.413416" 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-08-10T02:07:41.413132" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.414261" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:41.413589" elapsed="0.000702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.414791" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.414465" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.415419" 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-08-10T02:07:41.415074" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.415939" 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-08-10T02:07:41.415613" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.416457" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.416129" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.416967" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.416651" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.417649" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a980&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.417161" elapsed="0.000532"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:41.410853" elapsed="0.006895"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.418279" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:41.417898" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.418717" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:41.418477" 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-08-10T02:07:41.426441" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.426128" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.433236" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.433469" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:41.433577" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.426595" elapsed="0.007007"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.434021" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.433760" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.439659" 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-08-10T02:07:41.434281" elapsed="0.005534"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.442365" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.439913" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.439887" elapsed="0.002578"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.445875" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.445920" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:41.442655" elapsed="0.003288"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.447718" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.446016" elapsed="0.001757"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.445998" elapsed="0.001799"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.447831" elapsed="0.000134"/>
</return>
<msg time="2026-08-10T02:07:41.448135" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:41.448178" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:41.425816" elapsed="0.022384"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.450483" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.448753" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.448736" elapsed="0.001815"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.451119" 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-08-10T02:07:41.450696" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.451669" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.451304" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.451743" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:41.451919" 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-08-10T02:07:41.448428" 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-08-10T02:07:41.452096" 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-08-10T02:07:41.425252" elapsed="0.027304"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.460288" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.459992" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.471114" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.472180" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:41.472843" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.460462" elapsed="0.012441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.473846" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.473254" elapsed="0.000692"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.479560" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.474257" elapsed="0.006495"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.482574" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.480823" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.480805" elapsed="0.001840"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.513326" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.513390" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:41.482782" elapsed="0.030632"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.515202" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.513493" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.513474" elapsed="0.001809"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.515317" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:07:41.515528" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:41.515571" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:41.459617" elapsed="0.055977"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.517727" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.516135" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.516117" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.518353" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.517940" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.518891" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.518543" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.518994" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:41.519173" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:41.515807" elapsed="0.003391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.519370" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:41.458989" elapsed="0.060828"/>
</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-08-10T02:07:41.407614" elapsed="0.112258"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:41.400782" elapsed="0.119202"/>
</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-08-10T02:07:41.530773" 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-08-10T02:07:41.530923" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:41.530640" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:41.531544" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db9c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:41.531118" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.531997" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:41.531721" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.532456" 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-08-10T02:07:41.532171" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.532893" 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-08-10T02:07:41.532628" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.533759" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.533065" elapsed="0.000725"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.534270" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.533943" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.534843" 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-08-10T02:07:41.534519" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.535407" 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-08-10T02:07:41.535062" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.535911" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:41.535599" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.536435" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.536103" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.536948" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db9c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.536630" 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-08-10T02:07:41.530300" elapsed="0.006744"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.537586" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.537190" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.538004" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:41.537765" 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-08-10T02:07:41.545891" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.545597" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.551835" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.552096" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:41.552245" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.546045" elapsed="0.006235"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.552886" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.552536" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.556090" 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-08-10T02:07:41.553144" elapsed="0.003029"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.558713" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.556267" elapsed="0.002514"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.556241" elapsed="0.002571"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.563431" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.563496" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:41.559017" elapsed="0.004511"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.565435" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.563631" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.563605" elapsed="0.001910"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.565549" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.565739" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:41.565783" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:41.545267" elapsed="0.020539"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.568080" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.566356" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.566321" elapsed="0.001827"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.568703" 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-08-10T02:07:41.568292" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.569233" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.568889" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.569308" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:07:41.569503" 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-08-10T02:07:41.566013" 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-08-10T02:07:41.569680" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:41.544717" elapsed="0.025404"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.577877" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.577584" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.588673" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.589739" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:41.590440" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.578030" elapsed="0.012472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.591470" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.590849" elapsed="0.000722"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.597076" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.591883" elapsed="0.007301"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.601487" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.599371" elapsed="0.002164"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.599300" elapsed="0.002257"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.626935" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.626983" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:41.601692" elapsed="0.025314"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.628814" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.627097" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.627078" elapsed="0.001817"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.628929" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.629122" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:41.629166" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:41.577192" elapsed="0.051997"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.631383" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.629753" elapsed="0.001676"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.629735" elapsed="0.001716"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.631995" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.631598" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.632549" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.632183" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.632625" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:41.632801" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:41.629421" elapsed="0.003406"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.632980" 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-08-10T02:07:41.576582" elapsed="0.056859"/>
</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-08-10T02:07:41.527057" elapsed="0.106440"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:41.520223" elapsed="0.113385"/>
</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-08-10T02:07:41.644413" 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-08-10T02:07:41.644542" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:41.644262" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:41.645124" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff3d30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:41.644720" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.645603" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:41.645302" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.646047" 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-08-10T02:07:41.645780" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.646504" 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-08-10T02:07:41.646220" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.647405" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.646676" elapsed="0.000759"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.647913" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.647588" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.648479" 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-08-10T02:07:41.648142" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.648996" 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-08-10T02:07:41.648672" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.649516" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:41.649187" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.650026" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.649711" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.650562" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff3d30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.650220" 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-08-10T02:07:41.643936" elapsed="0.006722"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.651205" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.650805" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.651646" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:41.651406" 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-08-10T02:07:41.712050" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.711651" elapsed="0.000437"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.719937" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.720209" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:41.720359" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.712237" elapsed="0.008150"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.720807" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.720550" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.723181" 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-08-10T02:07:41.720993" elapsed="0.002249"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.725509" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.723319" elapsed="0.002263"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.723296" elapsed="0.002317"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.730145" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.730210" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:41.725806" elapsed="0.004437"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.732549" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.730368" elapsed="0.002237"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.730319" elapsed="0.002310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.732663" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:07:41.732863" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:41.732907" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:41.711286" elapsed="0.021644"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.735240" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.733499" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.733481" elapsed="0.001829"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.735884" 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-08-10T02:07:41.735476" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.736437" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.736070" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.736514" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:41.736693" 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-08-10T02:07:41.733148" 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-08-10T02:07:41.736871" 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-08-10T02:07:41.710522" 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-08-10T02:07:41.745105" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.744808" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.756901" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.757918" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:41.758592" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.745258" elapsed="0.013392"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.759616" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.758999" elapsed="0.000717"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.765274" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.760027" elapsed="0.007433"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.769599" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.767617" elapsed="0.002030"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.767575" elapsed="0.002094"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.793770" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.793817" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:41.769805" elapsed="0.024036"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.795648" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.793919" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.793900" elapsed="0.001829"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.795764" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.795959" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:41.796004" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:41.744433" elapsed="0.051594"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.798315" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.796598" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.796580" elapsed="0.001820"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.798945" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.798546" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.799531" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.799132" elapsed="0.000425"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.799606" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:41.799782" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:41.796244" 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-08-10T02:07:41.799959" 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-08-10T02:07:41.743800" elapsed="0.056620"/>
</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-08-10T02:07:41.640688" elapsed="0.159789"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:41.633844" elapsed="0.166761"/>
</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-08-10T02:07:41.811490" 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-08-10T02:07:41.811643" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:41.811347" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:41.812239" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31c60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:41.811822" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.812717" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:41.812436" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.813160" 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-08-10T02:07:41.812892" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.813620" 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-08-10T02:07:41.813350" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.814490" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.813792" elapsed="0.000728"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.815001" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.814673" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.815596" 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-08-10T02:07:41.815255" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.816110" 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-08-10T02:07:41.815787" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.816631" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:41.816301" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.817141" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.816826" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.817671" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31c60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.817351" 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-08-10T02:07:41.810989" elapsed="0.006779"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.818294" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.817915" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.818733" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:41.818492" 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-08-10T02:07:41.826616" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.826299" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.832849" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.833194" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:41.833374" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.826772" elapsed="0.006640"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.833982" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.833635" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.837218" 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-08-10T02:07:41.834241" elapsed="0.003060"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.839994" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.837420" elapsed="0.002628"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.837394" elapsed="0.002676"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.843269" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.843316" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:41.840206" elapsed="0.003148"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.845128" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.843428" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.843410" elapsed="0.001797"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.845240" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.845448" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:41.845492" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:41.825985" elapsed="0.019529"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.849536" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.846048" elapsed="0.003534"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.846030" elapsed="0.003574"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.850144" 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-08-10T02:07:41.849750" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.850696" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.850330" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.850771" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:41.850947" 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-08-10T02:07:41.845722" elapsed="0.005250"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.851128" 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-08-10T02:07:41.825429" elapsed="0.026175"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.859348" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.859027" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.872648" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.873484" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:41.874038" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.859503" elapsed="0.014575"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.874936" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.874453" elapsed="0.000548"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.878743" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.875203" elapsed="0.004939"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.882799" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.880264" elapsed="0.002613"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.880228" elapsed="0.002682"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.907716" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.907764" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:41.883107" elapsed="0.024680"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.909714" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.907867" elapsed="0.001903"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.907848" elapsed="0.001947"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.909830" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:41.910046" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:41.910091" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:41.858656" elapsed="0.051458"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.912374" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.910754" elapsed="0.001666"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.910737" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.913020" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.912598" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.913618" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.913208" elapsed="0.000437"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.913694" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:41.913872" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:41.910398" elapsed="0.003500"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.914054" 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-08-10T02:07:41.858037" elapsed="0.056507"/>
</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-08-10T02:07:41.807750" elapsed="0.106853"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:41.800912" elapsed="0.113833"/>
</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-08-10T02:07:41.929240" 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-08-10T02:07:41.929630" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:41.928888" elapsed="0.000808"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:41.931094" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff03b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:41.930072" elapsed="0.001085"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.932182" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:41.931552" elapsed="0.000689"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.933209" 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-08-10T02:07:41.932611" elapsed="0.000655"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:41.934227" 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-08-10T02:07:41.933632" elapsed="0.000654"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.936152" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.934652" elapsed="0.001532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.936714" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.936365" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.937314" 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-08-10T02:07:41.936993" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.937849" 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-08-10T02:07:41.937523" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.938372" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:41.938043" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.938881" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.938565" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.943018" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff03b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:41.939073" elapsed="0.003990"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:41.927884" elapsed="0.015239"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.943724" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:41.943277" elapsed="0.000478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.944159" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:41.943907" 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-08-10T02:07:41.952187" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.951872" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.959727" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:41.960018" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:41.960131" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.952362" elapsed="0.007795"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.960593" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:41.960318" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.962894" 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-08-10T02:07:41.960780" elapsed="0.002175"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.965157" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.963040" elapsed="0.002191"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.963014" elapsed="0.002248"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:41.969803" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:41.969867" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:41.965480" elapsed="0.004419"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:41.972288" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:41.970003" elapsed="0.002355"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.969976" elapsed="0.002407"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:41.972418" elapsed="0.000034"/>
</return>
<msg time="2026-08-10T02:07:41.972618" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:41.972661" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:41.951552" elapsed="0.021131"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:41.974805" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:41.973224" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:41.973207" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.975445" 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-08-10T02:07:41.975017" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.975980" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:41.975630" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:41.976056" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:41.976231" 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-08-10T02:07:41.972897" elapsed="0.003359"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:41.976427" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:41.950911" elapsed="0.025982"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:41.984867" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:41.984572" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:41.999889" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.000955" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:42.001636" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:41.985022" elapsed="0.016675"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.002634" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.002044" elapsed="0.000690"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.008182" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.003045" elapsed="0.006074"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.010928" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.009190" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.009172" elapsed="0.001831"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.037182" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.037228" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:42.011144" elapsed="0.026107"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.039032" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.037345" elapsed="0.001743"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.037310" elapsed="0.001802"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.039145" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.039353" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:42.039429" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:41.984175" elapsed="0.055278"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.041675" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.039997" elapsed="0.001723"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.039980" elapsed="0.001761"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.042283" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.041885" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.042837" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.042489" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.042912" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.043088" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:42.039669" 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-08-10T02:07:42.043268" 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-08-10T02:07:41.983543" elapsed="0.060203"/>
</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-08-10T02:07:41.921949" elapsed="0.121854"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:41.915068" elapsed="0.128870"/>
</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-08-10T02:07:42.054840" 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-08-10T02:07:42.054975" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:42.054701" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:42.055629" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:42.055156" elapsed="0.000502"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.056097" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:42.055815" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.056558" 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-08-10T02:07:42.056271" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.056996" 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-08-10T02:07:42.056732" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.057924" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:42.057170" elapsed="0.000785"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.058457" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.058114" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.059011" 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-08-10T02:07:42.058691" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.059557" 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-08-10T02:07:42.059201" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.060089" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.059748" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.060625" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.060295" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.061130" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.060816" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:42.054375" elapsed="0.006851"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.061768" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:42.061388" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.062193" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:42.061951" 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-08-10T02:07:42.070056" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.069760" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.078313" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.078568" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:42.078676" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.070211" elapsed="0.008491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.079148" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.078895" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.083427" 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-08-10T02:07:42.079351" elapsed="0.004226"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.087739" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.083730" elapsed="0.004118"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.083689" elapsed="0.004208"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.091211" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.091257" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:42.088160" elapsed="0.003120"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.093105" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.091393" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.091372" elapsed="0.001813"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.093218" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.093428" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:42.093471" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:42.069447" elapsed="0.024046"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.095803" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.094027" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.094010" elapsed="0.001861"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.096436" 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-08-10T02:07:42.096023" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.096973" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.096622" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.097048" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.097222" 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-08-10T02:07:42.093702" elapsed="0.003545"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.097416" 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-08-10T02:07:42.068873" elapsed="0.028988"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.105633" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.105317" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.118903" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.119915" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:42.120606" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.105789" elapsed="0.014878"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.121625" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.121028" elapsed="0.000696"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.127249" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.122039" elapsed="0.008277"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.132157" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.130404" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.130384" elapsed="0.001844"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.156628" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.156675" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:42.132384" 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-08-10T02:07:42.158593" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.156777" elapsed="0.001871"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.156758" elapsed="0.001915"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.158708" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.158904" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:42.158947" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:42.104930" elapsed="0.054040"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.161168" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.159584" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.159565" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.161798" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.161397" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.162357" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.161990" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.162435" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.162613" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:42.159188" 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-08-10T02:07:42.162796" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.104302" elapsed="0.058941"/>
</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-08-10T02:07:42.051109" elapsed="0.112189"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:42.044246" elapsed="0.119182"/>
</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-08-10T02:07:42.174192" 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-08-10T02:07:42.174356" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:42.174056" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:42.174955" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036ed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:42.174540" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.175428" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:42.175134" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.175928" 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-08-10T02:07:42.175649" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.176389" 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-08-10T02:07:42.176104" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.177312" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:42.176565" elapsed="0.000794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.177841" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.177515" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.178414" 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-08-10T02:07:42.178078" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.178929" 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-08-10T02:07:42.178606" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.179446" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.179119" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.179970" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.179655" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.180496" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036ed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.180162" 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-08-10T02:07:42.173731" elapsed="0.006860"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.181118" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:42.180738" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.181722" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:42.181298" elapsed="0.000489"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.189455" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.189142" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.196288" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.196544" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:42.196654" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.189610" elapsed="0.007069"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.197119" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.196868" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.199391" 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-08-10T02:07:42.197305" elapsed="0.002148"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.201832" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.199558" elapsed="0.002342"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.199537" elapsed="0.002393"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.206418" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.206484" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:42.202123" elapsed="0.004393"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.208845" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.206619" elapsed="0.002282"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.206593" elapsed="0.002332"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.208959" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.209151" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:42.209195" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:42.188830" elapsed="0.020387"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.211527" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.209776" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.209759" elapsed="0.001837"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.212140" 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-08-10T02:07:42.211742" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.212698" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.212327" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.212774" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.212950" 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-08-10T02:07:42.209446" elapsed="0.003529"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.213307" elapsed="0.000411"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.188266" elapsed="0.025516"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.221553" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.221234" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.235601" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.236668" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:42.237312" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.221710" elapsed="0.015696"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.238322" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.237765" elapsed="0.000700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.244084" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.238783" elapsed="0.006291"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.246901" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.245145" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.245126" elapsed="0.001845"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.271241" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.271289" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:42.247109" elapsed="0.024203"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.273244" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.271407" elapsed="0.001893"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.271388" elapsed="0.001936"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.273376" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.273570" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:42.273614" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:42.220861" elapsed="0.052775"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.275796" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.274178" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.274161" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.276427" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.276007" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.276965" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.276614" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.277040" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.277217" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:42.273850" elapsed="0.003392"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.277416" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.220234" elapsed="0.057628"/>
</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-08-10T02:07:42.170492" elapsed="0.107426"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:42.163682" elapsed="0.114346"/>
</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-08-10T02:07:42.288871" 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-08-10T02:07:42.289002" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:42.288736" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:42.289617" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c450&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:42.289186" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.290070" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:42.289796" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.290530" 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-08-10T02:07:42.290245" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.290970" 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-08-10T02:07:42.290705" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.291895" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:42.291143" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.292428" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.292080" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.292979" 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-08-10T02:07:42.292659" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.293511" 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-08-10T02:07:42.293171" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.294010" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:42.293701" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.294534" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:42.294202" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.295048" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c450&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.294728" 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-08-10T02:07:42.288406" elapsed="0.006738"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.295703" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:42.295289" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.296123" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:42.295884" 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-08-10T02:07:42.307350" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.307036" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.313952" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.314179" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:42.314288" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.307508" elapsed="0.006806"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.314749" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.314498" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.317626" 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-08-10T02:07:42.314987" elapsed="0.002725"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.320275" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.317808" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.317781" elapsed="0.002618"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.324762" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.324807" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:42.320593" elapsed="0.004237"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.326630" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.324904" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.324886" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.326742" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.326933" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:42.326976" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:42.306721" elapsed="0.020278"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.329293" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.327557" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.327539" elapsed="0.001838"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.329921" 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-08-10T02:07:42.329524" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.330474" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.330108" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.330550" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.330727" 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-08-10T02:07:42.327212" 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-08-10T02:07:42.330906" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.306148" elapsed="0.025216"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.339118" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.338819" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.354632" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.355718" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:42.356395" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.339272" elapsed="0.017185"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.357404" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.356812" elapsed="0.000695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.362032" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.357821" elapsed="0.005545"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.365911" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.363466" elapsed="0.002513"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.363440" elapsed="0.002569"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.390263" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.390310" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:42.366201" elapsed="0.024147"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.392287" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.390432" elapsed="0.001928"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.390412" elapsed="0.001974"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.392421" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.392616" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:42.392660" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:42.338445" elapsed="0.054238"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.394815" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.393230" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.393212" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.395439" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.395025" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.395992" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.395627" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.396067" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.396242" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:42.392896" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.396443" 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-08-10T02:07:42.337821" elapsed="0.059066"/>
</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-08-10T02:07:42.285121" elapsed="0.111821"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:42.278271" elapsed="0.118783"/>
</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-08-10T02:07:42.407938" 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-08-10T02:07:42.408090" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:42.407801" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:42.408695" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9efc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:42.408272" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.409156" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:42.408874" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.409617" 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-08-10T02:07:42.409347" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.410078" 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-08-10T02:07:42.409791" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.410951" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:42.410273" elapsed="0.000709"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.411483" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.411136" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.412062" 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-08-10T02:07:42.411735" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.412626" 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-08-10T02:07:42.412255" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.413126" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:42.412817" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.413654" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:42.413319" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.414162" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9efc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.413848" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:42.407443" elapsed="0.006815"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.414803" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:42.414425" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.415224" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:42.414984" 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-08-10T02:07:42.423198" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.422901" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.429428" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.429628" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:42.429733" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.423369" elapsed="0.006389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.430166" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.429916" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.432769" 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-08-10T02:07:42.430370" 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-08-10T02:07:42.435449" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.432995" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.432969" elapsed="0.002579"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.439732" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.439796" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:42.435762" elapsed="0.004067"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.442318" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.439931" elapsed="0.002487"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.439906" elapsed="0.002545"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.442498" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:42.442766" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:42.442826" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:42.422588" elapsed="0.020269"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.445363" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.443630" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.443606" elapsed="0.001826"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.445969" 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-08-10T02:07:42.445576" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.446521" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.446155" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.446596" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.446771" 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-08-10T02:07:42.443153" elapsed="0.003643"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.446951" 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-08-10T02:07:42.422016" elapsed="0.025400"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.458470" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.458144" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.473954" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.474624" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:42.475031" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.458626" elapsed="0.016442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.475684" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.475295" elapsed="0.000491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.479217" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.475986" elapsed="0.004559"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.483078" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.480644" elapsed="0.002503"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.480618" elapsed="0.002560"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.510731" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.510778" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:42.483392" elapsed="0.027409"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.512639" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.510878" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.510860" elapsed="0.001859"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.512752" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.512944" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:42.512988" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:42.454752" elapsed="0.058258"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.515147" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.513573" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.513555" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.515797" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.515374" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.516351" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.515985" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.516427" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.516604" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:42.513224" elapsed="0.003405"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.516782" elapsed="0.000379"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.454120" elapsed="0.063103"/>
</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-08-10T02:07:42.404182" elapsed="0.113098"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:42.397298" elapsed="0.120109"/>
</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-08-10T02:07:42.528309" 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-08-10T02:07:42.528457" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:42.528173" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:42.529018" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe16750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:42.528633" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.529487" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:42.529194" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.529926" 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-08-10T02:07:42.529660" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.530379" 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-08-10T02:07:42.530097" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.531096" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:42.530552" elapsed="0.000574"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.531620" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.531277" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.532206" 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-08-10T02:07:42.531885" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.532741" 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-08-10T02:07:42.532418" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.533239" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:42.532930" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.533763" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:42.533448" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.534278" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe16750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.533956" 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-08-10T02:07:42.527843" elapsed="0.006549"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.534935" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:42.534538" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.535375" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:42.535115" 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-08-10T02:07:42.543298" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.542999" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.550565" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.550827" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:42.550972" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.543472" elapsed="0.007535"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.551607" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.551228" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.554737" 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-08-10T02:07:42.551886" elapsed="0.002976"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.557442" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.554959" elapsed="0.002551"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.554933" elapsed="0.002607"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.561453" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.561517" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:42.557730" 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-08-10T02:07:42.564033" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.561652" elapsed="0.002437"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.561627" elapsed="0.002486"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.564147" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.564354" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:42.564401" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:42.542686" elapsed="0.021738"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.566585" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.564960" elapsed="0.001670"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.564943" elapsed="0.001709"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.567194" 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-08-10T02:07:42.566796" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.567745" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.567397" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.567834" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.568010" 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-08-10T02:07:42.564634" 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-08-10T02:07:42.568192" 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-08-10T02:07:42.542115" elapsed="0.026542"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.576610" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.576298" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.588735" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.589439" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:42.589849" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.576765" elapsed="0.013121"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.590491" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.590115" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.594007" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.590751" elapsed="0.004538"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.597710" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.595407" elapsed="0.002352"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.595380" elapsed="0.002400"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.624246" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.624292" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:42.597917" elapsed="0.026399"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.626164" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.624410" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.624391" elapsed="0.001853"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.626277" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.626491" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:42.626536" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:42.575915" elapsed="0.050643"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.628730" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.627109" elapsed="0.001666"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.627092" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.629353" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.628942" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.629994" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.629640" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.630069" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.630245" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:42.626779" elapsed="0.003492"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.630455" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.575278" elapsed="0.055623"/>
</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-08-10T02:07:42.524578" elapsed="0.106380"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:42.517665" elapsed="0.113405"/>
</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-08-10T02:07:42.641910" 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-08-10T02:07:42.642041" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:42.641774" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:42.642637" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3949f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:42.642220" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.643091" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:42.642815" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.643550" 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-08-10T02:07:42.643264" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.644020" 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-08-10T02:07:42.643723" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.644847" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:42.644193" elapsed="0.000684"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.645372" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.645029" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.645927" 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-08-10T02:07:42.645608" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.646458" 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-08-10T02:07:42.646119" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.646957" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:42.646648" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.647477" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:42.647148" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.648012" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3949f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.647670" 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-08-10T02:07:42.641447" elapsed="0.006661"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.648659" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:42.648254" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.649077" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:42.648839" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.659761" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.659461" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.666110" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.666546" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:42.666744" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.659952" elapsed="0.006845"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.667444" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.667159" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.670032" 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-08-10T02:07:42.667632" elapsed="0.002524"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.672694" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.670254" elapsed="0.002509"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.670227" elapsed="0.002567"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.676868" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.676931" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:42.672985" elapsed="0.003977"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.678737" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.677045" elapsed="0.001747"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.677027" elapsed="0.001788"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.678848" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.679040" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:42.679083" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:42.659130" elapsed="0.019976"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.681313" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.679658" elapsed="0.001716"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.679641" elapsed="0.001755"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.681936" 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-08-10T02:07:42.681541" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.682487" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.682122" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.682562" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.682737" 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-08-10T02:07:42.679313" elapsed="0.003449"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.682915" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.658576" elapsed="0.024801"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.691275" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.690980" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.702746" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.703411" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:42.703819" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.691448" elapsed="0.012408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.704481" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.704100" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.708007" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.704742" elapsed="0.004558"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.711842" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.709417" elapsed="0.002509"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.709390" elapsed="0.002567"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.739872" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.739918" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:42.712149" elapsed="0.027822"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.741776" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.740051" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.740032" elapsed="0.001825"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.741890" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.742080" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:42.742124" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:42.690608" elapsed="0.051538"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.744301" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.742706" elapsed="0.001655"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.742688" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.744926" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.744531" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.745475" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.745112" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.745550" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.745727" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:42.742376" elapsed="0.003376"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.745906" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.689978" elapsed="0.056389"/>
</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-08-10T02:07:42.638176" elapsed="0.108249"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:42.631349" elapsed="0.115191"/>
</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-08-10T02:07:42.757385" 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-08-10T02:07:42.757521" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:42.757233" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:42.758091" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1e40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:42.757698" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.758562" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:42.758267" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.759001" 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-08-10T02:07:42.758737" elapsed="0.000289"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.759458" 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-08-10T02:07:42.759173" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.760232" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:42.759631" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.760758" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.760432" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.761310" 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-08-10T02:07:42.760993" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.761838" 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-08-10T02:07:42.761517" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.762355" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:42.762029" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.762865" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:42.762550" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.763394" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1e40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.763061" 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-08-10T02:07:42.756909" elapsed="0.006581"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.764044" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:42.763635" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.764480" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:42.764222" 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-08-10T02:07:42.772357" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.772043" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.778506" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.778710" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:42.778816" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.772513" elapsed="0.006328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.779252" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.778998" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.781751" 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-08-10T02:07:42.779454" elapsed="0.002419"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.784455" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.781968" elapsed="0.002555"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.781942" elapsed="0.002612"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.788612" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.788676" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:42.784745" elapsed="0.003963"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.790567" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.788809" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.788784" elapsed="0.001862"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.790680" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.790871" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:42.790914" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:42.771703" elapsed="0.019233"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.793082" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.791495" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.791478" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.793704" 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-08-10T02:07:42.793292" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.794231" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.793888" elapsed="0.000368"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.794305" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:07:42.794499" 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-08-10T02:07:42.791151" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.794676" elapsed="0.000378"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.771134" elapsed="0.023982"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.803084" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.802790" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.834705" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.835374" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:42.835835" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.803237" elapsed="0.032636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.836517" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.836133" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.840036" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.836775" elapsed="0.004585"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.843888" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.841460" elapsed="0.002495"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.841434" elapsed="0.002551"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.879571" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.879619" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:42.844213" elapsed="0.035429"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.881501" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.879726" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.879705" elapsed="0.001879"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.881618" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:42.881818" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:42.881862" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:42.802417" elapsed="0.079467"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.884066" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.882470" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.882452" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.884708" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.884280" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.885242" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.884896" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.885318" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:07:42.885515" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:42.882112" elapsed="0.003428"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.885693" 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-08-10T02:07:42.801789" elapsed="0.084357"/>
</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-08-10T02:07:42.753648" elapsed="0.132554"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:42.746803" elapsed="0.139519"/>
</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-08-10T02:07:42.897187" 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-08-10T02:07:42.897363" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:42.897047" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:42.897952" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21ddf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:42.897544" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.898431" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:42.898136" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.898872" 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-08-10T02:07:42.898604" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:42.899310" 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-08-10T02:07:42.899044" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.900173" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:42.899500" elapsed="0.000703"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.900712" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.900374" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.901269" 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-08-10T02:07:42.900951" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.901802" 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-08-10T02:07:42.901479" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.902300" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.901992" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.902823" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.902510" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.903328" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21ddf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:42.903015" 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-08-10T02:07:42.896718" elapsed="0.006723"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.903963" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:42.903587" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.904433" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:42.904169" 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-08-10T02:07:42.912303" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.911968" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.918100" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.918320" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:42.918450" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.912479" elapsed="0.005997"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.918885" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.918636" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.921266" 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-08-10T02:07:42.919075" elapsed="0.002344"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.923969" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.921521" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.921495" elapsed="0.002574"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.928140" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.928208" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:42.924280" elapsed="0.003960"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.930313" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.928365" elapsed="0.002019"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.928317" elapsed="0.002091"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.930442" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.930634" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:42.930677" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:42.911655" elapsed="0.019044"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.932852" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.931232" elapsed="0.001666"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.931215" elapsed="0.001704"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.933481" 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-08-10T02:07:42.933069" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.934011" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:42.933666" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:42.934085" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:42.934259" 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-08-10T02:07:42.930907" elapsed="0.003377"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:42.934454" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:42.911083" elapsed="0.023816"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.942919" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:42.942624" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:42.956522" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:42.957162" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:42.957601" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:42.943073" elapsed="0.014566"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.958215" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.957861" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:42.961778" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:42.958499" elapsed="0.004574"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:42.965647" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.963172" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.963146" elapsed="0.002599"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:42.997108" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:42.997155" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:42.965937" elapsed="0.031241"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:42.998982" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:42.997256" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.997238" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:42.999095" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:42.999288" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:42.999347" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:42.942234" elapsed="0.057138"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.001532" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:42.999917" elapsed="0.001661"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:42.999900" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.002142" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.001747" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.002696" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.002345" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.002770" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:43.002946" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:42.999589" elapsed="0.003382"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:43.003130" 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-08-10T02:07:42.941615" elapsed="0.061976"/>
</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-08-10T02:07:42.893449" elapsed="0.110197"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:42.886605" elapsed="0.117153"/>
</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-08-10T02:07:43.014549" 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-08-10T02:07:43.014676" 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-08-10T02:07:43.014412" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.015225" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.014854" elapsed="0.000399"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.015695" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.015419" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.016135" 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-08-10T02:07:43.015869" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.016631" 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-08-10T02:07:43.016359" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.017298" 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-08-10T02:07:43.016803" elapsed="0.000524"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.017823" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.017498" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.018400" 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-08-10T02:07:43.018063" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.018917" 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-08-10T02:07:43.018593" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.019444" 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-08-10T02:07:43.019113" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.019953" 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-08-10T02:07:43.019639" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.020491" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.020145" 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-08-10T02:07:43.014070" elapsed="0.006518"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.021111" 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-08-10T02:07:43.020736" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.021548" 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-08-10T02:07:43.021290" 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-08-10T02:07:43.029388" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.029076" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.036052" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.036296" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:43.036424" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.029545" elapsed="0.006905"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.036864" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.036616" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.039075" 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-08-10T02:07:43.037055" elapsed="0.002074"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.040969" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.039197" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.039178" elapsed="0.001901"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.044945" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.045009" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:43.041373" elapsed="0.003668"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.047635" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.045143" elapsed="0.002569"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.045118" elapsed="0.002628"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.047793" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:43.048064" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:43.048125" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:43.028762" elapsed="0.019395"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.050648" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.048983" elapsed="0.001710"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.048953" elapsed="0.001762"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.051251" 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-08-10T02:07:43.050859" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.051814" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.051467" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.051890" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:43.052065" 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-08-10T02:07:43.048522" 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-08-10T02:07:43.052255" 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-08-10T02:07:43.028193" elapsed="0.024528"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.060489" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.060152" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.074391" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.075041" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:43.075466" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.060643" elapsed="0.014861"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.076076" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.075727" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.079681" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.076396" elapsed="0.004600"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.083549" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.081097" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.081071" elapsed="0.002576"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.113084" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.113131" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:43.083840" elapsed="0.029314"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.114940" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.113232" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.113213" elapsed="0.001806"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.115052" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:43.115245" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:43.115288" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:43.059782" elapsed="0.055529"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.117494" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.115887" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.115870" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.118097" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.117704" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.118651" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.118284" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.118726" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:43.118901" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:43.115558" elapsed="0.003369"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:43.119081" 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-08-10T02:07:43.059161" elapsed="0.060381"/>
</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-08-10T02:07:43.010822" elapsed="0.108775"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:43.003993" elapsed="0.115716"/>
</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-08-10T02:07:43.130519" 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-08-10T02:07:43.130650" 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-08-10T02:07:43.130382" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.131205" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dbba0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.130828" elapsed="0.000405"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.131679" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.131400" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.132123" 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-08-10T02:07:43.131856" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.132614" 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-08-10T02:07:43.132325" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.133307" 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-08-10T02:07:43.132788" elapsed="0.000565"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.133832" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.133507" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.134400" 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-08-10T02:07:43.134064" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.134916" 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-08-10T02:07:43.134594" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.135430" 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-08-10T02:07:43.135105" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.135935" 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-08-10T02:07:43.135623" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.136487" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dbba0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.136127" 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-08-10T02:07:43.130038" elapsed="0.006551"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.137110" 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-08-10T02:07:43.136734" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.137546" 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-08-10T02:07:43.137288" 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-08-10T02:07:43.146965" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.146670" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.153425" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.153619" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:43.153733" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.147119" elapsed="0.006640"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.154166" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.153916" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.156414" 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-08-10T02:07:43.154368" 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-08-10T02:07:43.158835" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.156573" elapsed="0.002329"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.156554" elapsed="0.002378"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.162687" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.162750" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:43.159122" elapsed="0.003660"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.165194" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.162883" elapsed="0.002366"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.162858" elapsed="0.002415"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.165306" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:07:43.165515" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:43.165558" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:43.146353" elapsed="0.019227"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.167708" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.166115" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.166098" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.168351" 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-08-10T02:07:43.167918" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.168889" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.168543" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.168963" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:43.169138" 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-08-10T02:07:43.165788" elapsed="0.003375"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:43.169316" 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-08-10T02:07:43.145783" elapsed="0.023991"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.177540" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.177225" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.190984" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.191695" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:43.192084" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.177694" elapsed="0.014427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.192735" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.192383" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.258555" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.192991" elapsed="0.066630"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.261571" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.259744" elapsed="0.001885"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.259711" elapsed="0.001942"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.290062" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.290109" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:43.261871" elapsed="0.028261"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.291940" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.290212" elapsed="0.001784"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.290192" elapsed="0.001829"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.292054" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:43.292272" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:43.292316" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:43.176854" elapsed="0.115501"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.294598" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.293007" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.292990" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.295292" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.294819" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.295848" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.295497" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.295922" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:43.296105" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:43.292647" 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-08-10T02:07:43.296285" 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-08-10T02:07:43.176201" elapsed="0.120608"/>
</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-08-10T02:07:43.126796" elapsed="0.170074"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:43.119948" elapsed="0.177061"/>
</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-08-10T02:07:43.308034" 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-08-10T02:07:43.308202" 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-08-10T02:07:43.307888" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.311723" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0cc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.311266" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.312189" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.311904" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.312671" 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-08-10T02:07:43.312400" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.313114" 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-08-10T02:07:43.312848" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.313844" 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-08-10T02:07:43.313288" elapsed="0.000586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.314377" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.314029" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.314950" 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-08-10T02:07:43.314632" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.315489" 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-08-10T02:07:43.315144" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.315985" 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-08-10T02:07:43.315678" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.316514" 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-08-10T02:07:43.316176" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.317022" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0cc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.316708" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:43.307553" elapsed="0.009564"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.317658" 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-08-10T02:07:43.317261" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.318073" 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-08-10T02:07:43.317835" 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-08-10T02:07:43.325977" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.325665" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.332568" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.332776" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:43.332884" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.326133" elapsed="0.006777"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.333324" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.333075" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.335579" 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-08-10T02:07:43.333529" elapsed="0.002141"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.337771" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.335740" elapsed="0.002100"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.335720" elapsed="0.002151"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.341628" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.341691" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:43.338066" elapsed="0.003657"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.344175" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.341825" elapsed="0.002427"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.341799" elapsed="0.002486"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.344352" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:07:43.344665" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:43.344726" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:43.325347" elapsed="0.019410"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.347024" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.345446" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.345429" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.347653" 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-08-10T02:07:43.347239" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.348184" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.347839" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.348259" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:43.348466" 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-08-10T02:07:43.345072" elapsed="0.003421"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:43.348647" 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-08-10T02:07:43.324774" elapsed="0.024319"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.357030" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.356735" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.375361" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.376014" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;fal... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:43.376476" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.357185" elapsed="0.019332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.377096" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.376745" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.380610" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-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;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;689000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;273000000&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;728000000&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;309000000&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;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;802000000&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;384000000&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;8&lt;/second&gt;&lt;nanosecond&gt;835000000&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;8&lt;/second&gt;&lt;nanosecond&gt;868000000&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;7&lt;/second&gt;&lt;nanosecond&gt;874000000&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;183000000&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;32000000&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;221000000&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;63000000&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;252000000&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;97000000&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;290000000&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;329000000&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;365000000&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;404000000&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;126000000&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;441000000&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;473000000&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;498000000&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;533000000&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;39000000&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;566000000&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;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;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;605000000&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;646000000&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;686000000&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;724000000&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;6&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;758000000&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;6&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;74000000&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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&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;6&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;109000000&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;7&lt;/second&gt;&lt;nanosecond&gt;835000000&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;6&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;4000000&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;7&lt;/second&gt;&lt;nanosecond&gt;914000000&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;7&lt;/second&gt;&lt;nanosecond&gt;954000000&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;7&lt;/second&gt;&lt;nanosecond&gt;993000000&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;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;420000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.377379" elapsed="0.004528"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.384491" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.382008" elapsed="0.002557"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.381982" elapsed="0.002614"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.414220" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.414267" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:43.384790" elapsed="0.029499"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.416081" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.414385" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.414365" elapsed="0.001797"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.416195" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:07:43.416403" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:43.416447" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:43.356349" elapsed="0.060145"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.418631" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.417041" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.417023" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.419239" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.418844" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.419797" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.419446" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.419872" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:43.420054" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:43.416713" elapsed="0.003367"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:43.420235" 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-08-10T02:07:43.355713" elapsed="0.065014"/>
</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-08-10T02:07:43.304236" elapsed="0.116546"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:43.297378" elapsed="0.123517"/>
</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-08-10T02:07:43.431798" 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-08-10T02:07:43.431928" 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-08-10T02:07:43.431661" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.432529" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda17b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.432106" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.432991" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.432715" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.433453" 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-08-10T02:07:43.433166" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.433893" 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-08-10T02:07:43.433626" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.434599" 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-08-10T02:07:43.434066" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.435108" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.434782" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.435675" 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-08-10T02:07:43.435354" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.436192" 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-08-10T02:07:43.435865" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.436739" 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-08-10T02:07:43.436398" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.437247" 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-08-10T02:07:43.436933" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.437774" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda17b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.437458" 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-08-10T02:07:43.431319" elapsed="0.006550"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.438409" 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-08-10T02:07:43.438014" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.438826" 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-08-10T02:07:43.438588" elapsed="0.000293"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.446715" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.446418" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.453035" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.453226" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:43.453350" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.446871" elapsed="0.006507"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.453795" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.453544" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.456024" 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-08-10T02:07:43.453981" elapsed="0.002132"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.458389" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.456182" elapsed="0.002277"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.456163" elapsed="0.002327"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.462241" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.462305" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:43.458683" elapsed="0.003674"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.464967" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.462462" elapsed="0.002586"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.462436" elapsed="0.002653"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.465147" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:07:43.465389" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:43.465434" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:43.446089" elapsed="0.019368"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.467587" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.465992" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.465975" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.468190" 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-08-10T02:07:43.467799" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.468770" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.468394" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.468845" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:43.469020" 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-08-10T02:07:43.465667" elapsed="0.003378"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:43.469198" 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-08-10T02:07:43.445538" elapsed="0.024119"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.477406" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.477092" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.491638" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.492732" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;538000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;192000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;686000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;267000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;721000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;ba... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:43.493421" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.477562" elapsed="0.015921"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.494432" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.493839" elapsed="0.000695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.500076" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;538000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;192000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;686000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;267000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;721000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;304000000&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;760000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;800000000&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;380000000&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;11&lt;/second&gt;&lt;nanosecond&gt;834000000&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;415000000&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;11&lt;/second&gt;&lt;nanosecond&gt;867000000&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;11&lt;/second&gt;&lt;nanosecond&gt;899000000&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;10&lt;/second&gt;&lt;nanosecond&gt;906000000&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;214000000&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;63000000&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;252000000&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;94000000&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;284000000&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;128000000&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;322000000&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;361000000&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;397000000&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;436000000&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;157000000&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;473000000&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;505000000&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;530000000&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;565000000&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;70000000&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;598000000&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;9&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;637000000&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;678000000&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;718000000&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;755000000&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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;790000000&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;9&lt;/second&gt;&lt;nanosecond&gt;941000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;106000000&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;10&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;976000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;141000000&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;10&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;4000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;178000000&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;35000000&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;10&lt;/second&gt;&lt;nanosecond&gt;946000000&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;10&lt;/second&gt;&lt;nanosecond&gt;985000000&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;24000000&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;493000000&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;452000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.494850" elapsed="0.009829"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.506567" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.504773" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.504754" elapsed="0.001884"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.535406" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.535453" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:43.506782" elapsed="0.028694"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.537263" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.535554" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.535535" elapsed="0.001824"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.537394" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:43.537590" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:43.537633" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:43.476719" elapsed="0.060937"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.539790" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.538202" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.538184" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.540445" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.540003" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.541012" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.540659" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.541087" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:43.541264" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:43.537872" elapsed="0.003417"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:43.541461" 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-08-10T02:07:43.476081" elapsed="0.065828"/>
</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-08-10T02:07:43.428055" elapsed="0.113909"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:43.421211" elapsed="0.120867"/>
</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-08-10T02:07:43.552926" 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-08-10T02:07:43.553073" 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-08-10T02:07:43.552789" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.553663" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.553252" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.554118" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.553840" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.554582" 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-08-10T02:07:43.554293" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.555020" 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-08-10T02:07:43.554755" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.555797" 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-08-10T02:07:43.555198" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.556308" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.555981" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.556917" 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-08-10T02:07:43.556593" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.557449" 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-08-10T02:07:43.557109" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.557950" 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-08-10T02:07:43.557642" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.558474" 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-08-10T02:07:43.558144" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.558985" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.558669" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:43.552450" elapsed="0.006630"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.559628" 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-08-10T02:07:43.559228" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.560047" 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-08-10T02:07:43.559808" 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-08-10T02:07:43.567936" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.567638" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.573635" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.573848" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:43.573955" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.568091" elapsed="0.005890"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.574622" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.574236" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.577776" 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-08-10T02:07:43.574883" 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-08-10T02:07:43.580447" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.577996" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.577970" elapsed="0.002576"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.584488" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.584552" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:07:43.580775" elapsed="0.003809"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.586603" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.584728" elapsed="0.001929"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.584697" elapsed="0.001984"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.586714" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:43.586906" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:07:43.586949" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:43.567306" elapsed="0.019665"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.589104" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.587529" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.587512" elapsed="0.001659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.589738" 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-08-10T02:07:43.589316" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.590266" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.589924" elapsed="0.000367"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.590356" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:43.590536" 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-08-10T02:07:43.587185" elapsed="0.003376"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:43.590713" elapsed="0.000378"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:43.566751" elapsed="0.024401"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.599100" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:43.598805" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:43.610102" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.610594" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;538000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;192000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;686000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;267000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;721000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;ba... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:07:43.610895" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:43.599254" elapsed="0.011668"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.611754" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.611131" elapsed="0.000722"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.617455" 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;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;538000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;192000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;616000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;686000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;267000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;721000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.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;304000000&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;760000000&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;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;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;800000000&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;380000000&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;11&lt;/second&gt;&lt;nanosecond&gt;834000000&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;415000000&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;11&lt;/second&gt;&lt;nanosecond&gt;867000000&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;11&lt;/second&gt;&lt;nanosecond&gt;899000000&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;10&lt;/second&gt;&lt;nanosecond&gt;906000000&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;214000000&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;63000000&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;252000000&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;94000000&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;284000000&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;128000000&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;322000000&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;361000000&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;397000000&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;436000000&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;157000000&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;473000000&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;505000000&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;530000000&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;565000000&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;70000000&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;598000000&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;9&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;637000000&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;678000000&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;718000000&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;755000000&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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;790000000&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;9&lt;/second&gt;&lt;nanosecond&gt;941000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;106000000&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;10&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;976000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;141000000&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;10&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;4000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;178000000&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;35000000&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;10&lt;/second&gt;&lt;nanosecond&gt;946000000&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;10&lt;/second&gt;&lt;nanosecond&gt;985000000&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;24000000&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;493000000&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;452000000&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;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.612168" elapsed="0.007350"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.622414" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.619676" elapsed="0.002793"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.619635" elapsed="0.002856"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.650307" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:07:43.650371" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:43.622628" elapsed="0.027767"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:43.652167" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:43.650473" elapsed="0.001749"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.650454" elapsed="0.001792"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:43.652279" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:43.652490" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:07:43.652534" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:43.598431" elapsed="0.054125"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:43.654723" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:43.653128" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:43.653110" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.655351" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.654938" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.655889" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:43.655539" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:43.655964" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:43.656140" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:43.652797" elapsed="0.003368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:43.656318" 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-08-10T02:07:43.597802" elapsed="0.058995"/>
</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-08-10T02:07:43.549192" elapsed="0.107661"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:43.542356" elapsed="0.114611"/>
</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-08-10T02:07:43.658126" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.657882" elapsed="0.000289"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:43.661614" 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-08-10T02:07:43.661746" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.661470" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.662309" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d260&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.661924" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.662781" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.662507" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.663220" 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-08-10T02:07:43.662955" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.663685" 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-08-10T02:07:43.663409" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.664444" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.663855" elapsed="0.000619"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.664998" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.664626" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.665516" 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-08-10T02:07:43.665193" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.666014" 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-08-10T02:07:43.665705" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.666517" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.666202" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.667011" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.666709" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.667522" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d260&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.667203" 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-08-10T02:07:43.661121" elapsed="0.006496"/>
</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-08-10T02:07:43.685217" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.685319" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.685519" 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-08-10T02:07:43.677917" elapsed="0.007638"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.688516" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.685782" elapsed="0.002793"/>
</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-08-10T02:07:43.677503" elapsed="0.011152"/>
</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-08-10T02:07:43.667764" elapsed="0.021001"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.657755" elapsed="0.031066"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.689503" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.689136" 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-08-10T02:07:43.694307" 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-08-10T02:07:43.694507" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.694111" elapsed="0.000437"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.695297" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d990&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.694754" elapsed="0.000603"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.695990" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.695605" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.696628" 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-08-10T02:07:43.696230" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.697317" 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-08-10T02:07:43.696919" elapsed="0.000456"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.698113" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.697536" elapsed="0.000607"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.698625" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.698294" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.699161" 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-08-10T02:07:43.698856" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.699679" 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-08-10T02:07:43.699367" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.700166" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.699868" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.700699" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.700374" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.701204" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d990&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.700894" 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-08-10T02:07:43.693652" elapsed="0.007647"/>
</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-08-10T02:07:43.715661" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.715706" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.715794" 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-08-10T02:07:43.708202" elapsed="0.007618"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.718944" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.715973" elapsed="0.003031"/>
</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-08-10T02:07:43.707825" elapsed="0.011263"/>
</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-08-10T02:07:43.701462" elapsed="0.017696"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.688961" elapsed="0.030247"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.719883" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.719539" 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-08-10T02:07:43.724794" 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-08-10T02:07:43.724969" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.724570" elapsed="0.000441"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.725634" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ff60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.725232" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.726089" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.725812" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.726551" 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-08-10T02:07:43.726265" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.726989" 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-08-10T02:07:43.726724" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.727743" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.727162" elapsed="0.000611"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.728236" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.727924" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.728806" 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-08-10T02:07:43.728483" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.729315" 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-08-10T02:07:43.729000" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.729823" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.729523" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.730320" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.730018" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.730836" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ff60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.730532" 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-08-10T02:07:43.724087" elapsed="0.006844"/>
</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-08-10T02:07:43.744554" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.744599" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.744687" 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-08-10T02:07:43.737809" elapsed="0.006931"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.746941" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.744900" elapsed="0.002084"/>
</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-08-10T02:07:43.737432" elapsed="0.009609"/>
</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-08-10T02:07:43.731078" elapsed="0.016019"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.719361" elapsed="0.027773"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.747618" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.747371" 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-08-10T02:07:43.751889" 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-08-10T02:07:43.752064" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.751705" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.752894" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0352b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.752309" elapsed="0.000624"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.753559" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.753140" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.754182" 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-08-10T02:07:43.753804" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.754816" 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-08-10T02:07:43.754444" elapsed="0.000407"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.755910" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.755056" elapsed="0.000895"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.756623" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.756162" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.757398" 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-08-10T02:07:43.756983" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.757899" 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-08-10T02:07:43.757591" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.758403" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.758089" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.758899" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.758597" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.759413" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0352b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.759091" 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-08-10T02:07:43.751226" elapsed="0.008283"/>
</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-08-10T02:07:43.773610" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.773655" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.773742" 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-08-10T02:07:43.766440" elapsed="0.007327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.776841" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.773920" 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-08-10T02:07:43.766048" elapsed="0.010938"/>
</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-08-10T02:07:43.759654" elapsed="0.017404"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.747230" elapsed="0.029883"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.777787" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.777444" elapsed="0.000403"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:43.782801" 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-08-10T02:07:43.782977" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.782616" elapsed="0.000407"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.783858" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0344a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.783275" elapsed="0.000622"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.784521" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.784103" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.785192" 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-08-10T02:07:43.784801" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.785722" 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-08-10T02:07:43.785452" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.786551" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.785896" elapsed="0.000685"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.787045" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.786735" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.787559" 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-08-10T02:07:43.787236" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.788098" 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-08-10T02:07:43.787787" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.788605" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.788288" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.789120" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.788810" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.789634" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0344a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.789313" 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-08-10T02:07:43.782100" elapsed="0.007630"/>
</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-08-10T02:07:43.804072" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.804139" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.804262" 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-08-10T02:07:43.796726" elapsed="0.007571"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.807418" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.804547" elapsed="0.002932"/>
</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-08-10T02:07:43.796349" elapsed="0.011208"/>
</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-08-10T02:07:43.789876" elapsed="0.017753"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.777246" elapsed="0.030434"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.808405" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.807988" 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-08-10T02:07:43.813305" 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-08-10T02:07:43.813468" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.813116" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.814041" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035fd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.813644" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.814530" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.814240" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.814969" 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-08-10T02:07:43.814704" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.815422" 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-08-10T02:07:43.815140" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.816204" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.815593" elapsed="0.000640"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.816711" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.816401" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.817221" 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-08-10T02:07:43.816920" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.817778" 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-08-10T02:07:43.817464" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.818274" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.817970" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.818789" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.818485" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.819286" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035fd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.818981" 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-08-10T02:07:43.812609" elapsed="0.006795"/>
</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-08-10T02:07:43.835625" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.835670" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.835758" 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-08-10T02:07:43.826273" elapsed="0.009511"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.840901" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.835939" elapsed="0.005060"/>
</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-08-10T02:07:43.825894" elapsed="0.015232"/>
</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-08-10T02:07:43.819556" elapsed="0.021686"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.807813" elapsed="0.033510"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.842441" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.841858" elapsed="0.000684"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:43.847550" 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-08-10T02:07:43.847677" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.847414" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.848255" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0354e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.847856" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.848722" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.848449" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.849202" 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-08-10T02:07:43.848926" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.849666" 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-08-10T02:07:43.849395" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.850543" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.849838" elapsed="0.000735"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.851041" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.850726" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.851560" 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-08-10T02:07:43.851235" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.852106" 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-08-10T02:07:43.851787" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.852626" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.852297" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.853147" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.852842" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.853663" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0354e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.853356" 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-08-10T02:07:43.847065" elapsed="0.006694"/>
</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-08-10T02:07:43.871263" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.871363" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.871501" 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-08-10T02:07:43.863622" elapsed="0.007916"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.874672" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.871756" 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-08-10T02:07:43.863195" elapsed="0.011617"/>
</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-08-10T02:07:43.853903" elapsed="0.020981"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.841576" elapsed="0.033360"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.875615" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.875244" 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-08-10T02:07:43.880437" 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-08-10T02:07:43.880612" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.880230" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.881518" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.880892" elapsed="0.000666"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.882152" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.881770" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.882794" 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-08-10T02:07:43.882419" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.883432" 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-08-10T02:07:43.883035" elapsed="0.000433"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.884703" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.883674" elapsed="0.001071"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.885470" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.884999" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.886166" 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-08-10T02:07:43.885742" elapsed="0.000481"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.886970" 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-08-10T02:07:43.886453" elapsed="0.000641"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.887765" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.887308" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.888488" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.888037" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.889247" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.888760" elapsed="0.000559"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:43.879771" 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-08-10T02:07:43.903543" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.903588" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.903678" 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-08-10T02:07:43.896198" elapsed="0.007506"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.905951" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.903864" elapsed="0.002130"/>
</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-08-10T02:07:43.895822" elapsed="0.010259"/>
</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-08-10T02:07:43.889559" elapsed="0.016656"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.875069" elapsed="0.031238"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.907421" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.906840" 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-08-10T02:07:43.914672" 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-08-10T02:07:43.914798" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.914540" elapsed="0.000287"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.915400" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036bb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.914975" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.915849" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.915577" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.916295" 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-08-10T02:07:43.916023" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.916755" 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-08-10T02:07:43.916487" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.917675" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.916942" elapsed="0.000763"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.918171" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.917859" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.918693" 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-08-10T02:07:43.918384" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.919194" 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-08-10T02:07:43.918882" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.919746" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.919442" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.920244" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.919940" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.920761" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036bb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.920454" 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-08-10T02:07:43.914183" elapsed="0.006702"/>
</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-08-10T02:07:43.939630" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.939730" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.939927" 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-08-10T02:07:43.927745" elapsed="0.012240"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.945031" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.940365" elapsed="0.004763"/>
</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-08-10T02:07:43.927365" elapsed="0.017891"/>
</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-08-10T02:07:43.921038" elapsed="0.024368"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.906558" elapsed="0.038933"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.946410" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.945989" 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-08-10T02:07:43.951217" 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-08-10T02:07:43.951421" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.951031" elapsed="0.000435"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.952245" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e56c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.951675" elapsed="0.000609"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.952938" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.952516" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.953593" 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-08-10T02:07:43.953189" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.954227" 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-08-10T02:07:43.953838" elapsed="0.000417"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.955131" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.954418" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.955646" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.955314" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.956141" 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-08-10T02:07:43.955839" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.956655" 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-08-10T02:07:43.956330" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.957206" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.956896" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.957728" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.957417" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.958231" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e56c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.957924" 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-08-10T02:07:43.950569" elapsed="0.007758"/>
</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-08-10T02:07:43.972412" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:43.972476" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:43.972599" 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-08-10T02:07:43.965221" elapsed="0.007414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.975755" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.972853" elapsed="0.002961"/>
</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-08-10T02:07:43.964828" elapsed="0.011065"/>
</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-08-10T02:07:43.958494" elapsed="0.017471"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.945707" elapsed="0.030310"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.976699" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:43.976354" 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-08-10T02:07:43.981585" 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-08-10T02:07:43.981761" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:43.981395" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:43.982611" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036610&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:43.982011" elapsed="0.000640"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.983246" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:43.982862" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.983906" 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-08-10T02:07:43.983529" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:43.984548" 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-08-10T02:07:43.984149" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:43.985858" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:43.984791" elapsed="0.001109"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.986492" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.986142" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.986987" 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-08-10T02:07:43.986684" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.987502" 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-08-10T02:07:43.987175" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.987985" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.987690" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.988558" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.988232" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:43.989093" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036610&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:43.988753" 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-08-10T02:07:43.980908" elapsed="0.008281"/>
</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-08-10T02:07:44.004606" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.004650" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.004738" 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-08-10T02:07:43.996139" elapsed="0.008624"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.007830" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.004946" elapsed="0.002944"/>
</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-08-10T02:07:43.995758" elapsed="0.012210"/>
</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-08-10T02:07:43.989352" elapsed="0.018687"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-08-10T02:07:43.976156" elapsed="0.031934"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.008769" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.008425" elapsed="0.000404"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.013647" 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-08-10T02:07:44.013824" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:44.013458" elapsed="0.000407"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.014569" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e61b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.014090" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.015025" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.014750" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.015489" 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-08-10T02:07:44.015201" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.015933" 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-08-10T02:07:44.015665" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.016834" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:44.016105" elapsed="0.000759"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.017373" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.017036" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.017869" 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-08-10T02:07:44.017567" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.018383" 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-08-10T02:07:44.018059" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.018870" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.018574" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.019427" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.019104" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.019932" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e61b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.019623" 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-08-10T02:07:44.012970" elapsed="0.007057"/>
</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-08-10T02:07:44.034181" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.034227" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.034313" 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-08-10T02:07:44.026926" elapsed="0.007434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.036573" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.034527" elapsed="0.002089"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-08-10T02:07:44.026545" elapsed="0.010129"/>
</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-08-10T02:07:44.020177" elapsed="0.016548"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.008224" elapsed="0.028539"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.037267" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.037019" 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-08-10T02:07:44.041879" 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-08-10T02:07:44.042056" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:44.041694" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.042877" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e64d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.042303" elapsed="0.000612"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.043527" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.043122" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.044142" 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-08-10T02:07:44.043768" elapsed="0.000409"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.044775" 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-08-10T02:07:44.044403" elapsed="0.000408"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.045972" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:44.045054" elapsed="0.000960"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.046578" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.046242" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.047071" 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-08-10T02:07:44.046769" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.047585" 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-08-10T02:07:44.047259" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.048069" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.047772" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.048632" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.048304" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.052382" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e64d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.048825" elapsed="0.003611"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:44.041206" elapsed="0.011291"/>
</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-08-10T02:07:44.067320" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.067386" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.067476" 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-08-10T02:07:44.059408" elapsed="0.008099"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.069741" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.067662" elapsed="0.002122"/>
</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-08-10T02:07:44.059013" elapsed="0.010828"/>
</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-08-10T02:07:44.052655" elapsed="0.017237"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.036860" elapsed="0.033070"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.070913" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.070323" 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-08-10T02:07:44.078484" 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-08-10T02:07:44.078610" 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-08-10T02:07:44.078348" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.079184" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.078787" elapsed="0.000425"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.079654" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.079379" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.080098" 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-08-10T02:07:44.079828" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.080557" 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-08-10T02:07:44.080271" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.081399" 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-08-10T02:07:44.080729" elapsed="0.000701"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.081897" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.081583" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.082408" 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-08-10T02:07:44.082087" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.082908" 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-08-10T02:07:44.082599" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.083414" 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-08-10T02:07:44.083101" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.083978" 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-08-10T02:07:44.083668" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.084502" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.084173" 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-08-10T02:07:44.077731" elapsed="0.006869"/>
</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-08-10T02:07:44.098650" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.098695" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.098783" 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-08-10T02:07:44.091528" elapsed="0.007281"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.101042" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.098965" elapsed="0.002125"/>
</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-08-10T02:07:44.091127" elapsed="0.010021"/>
</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-08-10T02:07:44.084746" elapsed="0.016452"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.070027" elapsed="0.031209"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.101721" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.101476" elapsed="0.000288"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.106500" 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-08-10T02:07:44.106674" 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-08-10T02:07:44.106288" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.107492" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30450&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.106923" elapsed="0.000609"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.108125" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.107743" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.108769" 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-08-10T02:07:44.108392" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.109454" 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-08-10T02:07:44.109047" elapsed="0.000443"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.110521" 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-08-10T02:07:44.109700" elapsed="0.000852"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.111020" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.110707" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.111539" 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-08-10T02:07:44.111218" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.112049" 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-08-10T02:07:44.111739" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.112552" 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-08-10T02:07:44.112237" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.113104" 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-08-10T02:07:44.112744" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.113629" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30450&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.113304" 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-08-10T02:07:44.105815" elapsed="0.007910"/>
</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-08-10T02:07:44.127884" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.127947" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.128070" 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-08-10T02:07:44.120630" elapsed="0.007477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.131236" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.128326" elapsed="0.002971"/>
</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-08-10T02:07:44.120234" elapsed="0.011166"/>
</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-08-10T02:07:44.113871" elapsed="0.017601"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.101348" elapsed="0.030175"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.132173" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.131832" elapsed="0.000403"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.137075" 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-08-10T02:07:44.137258" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.136854" elapsed="0.000444"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.138062" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.137532" elapsed="0.000569"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.138718" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.138309" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.139385" 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-08-10T02:07:44.138962" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.140014" 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-08-10T02:07:44.139639" elapsed="0.000411"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.141111" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.140261" elapsed="0.000894"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.141830" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.141394" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.142479" 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-08-10T02:07:44.142123" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.142975" 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-08-10T02:07:44.142668" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.143475" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.143163" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.143968" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.143668" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.144533" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.144206" 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-08-10T02:07:44.136391" elapsed="0.008238"/>
</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-08-10T02:07:44.158295" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.158361" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.158452" 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-08-10T02:07:44.151551" elapsed="0.006926"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.161419" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.158634" elapsed="0.002847"/>
</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-08-10T02:07:44.151158" elapsed="0.010402"/>
</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-08-10T02:07:44.144775" elapsed="0.016857"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.131658" elapsed="0.030025"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.162359" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.161993" elapsed="0.000430"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.167182" 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-08-10T02:07:44.167379" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.166999" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.168150" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff09a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.167626" elapsed="0.000563"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.168805" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.168420" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.169501" 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-08-10T02:07:44.169089" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.170142" 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-08-10T02:07:44.169746" elapsed="0.000427"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.170883" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.170350" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.171401" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.171072" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.171896" 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-08-10T02:07:44.171594" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.172409" 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-08-10T02:07:44.172085" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.172894" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.172599" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.173418" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.173099" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.173963" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff09a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.173653" 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-08-10T02:07:44.166536" elapsed="0.007522"/>
</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-08-10T02:07:44.187937" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.187999" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.188127" 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-08-10T02:07:44.180939" elapsed="0.007223"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.191299" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.188408" elapsed="0.002974"/>
</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-08-10T02:07:44.180562" elapsed="0.010900"/>
</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-08-10T02:07:44.174203" elapsed="0.017330"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.161817" elapsed="0.029767"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.192232" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.191892" elapsed="0.000401"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.197083" 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-08-10T02:07:44.197267" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.196883" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.198091" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8ade0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.197546" elapsed="0.000583"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.198750" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.198359" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.199384" 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-08-10T02:07:44.198992" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.199998" 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-08-10T02:07:44.199627" elapsed="0.000406"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.201002" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.200241" elapsed="0.000803"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.201767" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.201299" elapsed="0.000526"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.202426" 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-08-10T02:07:44.202041" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.202925" 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-08-10T02:07:44.202616" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.203534" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.203209" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.204031" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.203728" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.204595" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8ade0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.204266" 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-08-10T02:07:44.196425" elapsed="0.008267"/>
</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-08-10T02:07:44.219146" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.219191" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.219279" 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-08-10T02:07:44.211589" elapsed="0.007715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.223074" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.219482" elapsed="0.003652"/>
</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-08-10T02:07:44.211194" elapsed="0.012020"/>
</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-08-10T02:07:44.204839" elapsed="0.018445"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.191719" elapsed="0.031639"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.224013" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.223671" elapsed="0.000403"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.228857" 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-08-10T02:07:44.229032" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.228672" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.229901" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb893f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.229317" elapsed="0.000623"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.230475" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.230171" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.230915" 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-08-10T02:07:44.230649" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.231375" 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-08-10T02:07:44.231092" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.232211" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.231547" elapsed="0.000695"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.232726" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.232413" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.233240" 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-08-10T02:07:44.232919" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.233763" 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-08-10T02:07:44.233449" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.234251" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.233953" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.234767" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.234461" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.235309" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb893f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.235000" 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-08-10T02:07:44.228187" elapsed="0.007237"/>
</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-08-10T02:07:44.252140" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.252185" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.252275" 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-08-10T02:07:44.244871" elapsed="0.007430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.255291" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.252486" elapsed="0.002937"/>
</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-08-10T02:07:44.244465" elapsed="0.011088"/>
</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-08-10T02:07:44.235571" elapsed="0.020097"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.223496" elapsed="0.032253"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.256848" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.256262" 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-08-10T02:07:44.263321" 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-08-10T02:07:44.263465" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.263188" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.264042" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff22a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.263641" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.264513" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.264220" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.264954" 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-08-10T02:07:44.264687" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.265431" 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-08-10T02:07:44.265140" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.266266" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.265603" elapsed="0.000693"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.266781" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.266467" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.267274" 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-08-10T02:07:44.266971" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.267792" 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-08-10T02:07:44.267482" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.268276" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.267980" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.268788" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.268485" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.269379" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff22a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.269020" 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-08-10T02:07:44.262858" elapsed="0.006626"/>
</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-08-10T02:07:44.283250" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.283379" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.283550" 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-08-10T02:07:44.276373" elapsed="0.007225"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.286203" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.283884" elapsed="0.002393"/>
</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-08-10T02:07:44.275981" elapsed="0.010404"/>
</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-08-10T02:07:44.269631" elapsed="0.016829"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.255982" elapsed="0.030530"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.287162" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.286821" elapsed="0.000403"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.292016" 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-08-10T02:07:44.292192" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.291830" elapsed="0.000401"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.293025" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff01d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.292464" elapsed="0.000600"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.293726" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.293315" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.294325" 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-08-10T02:07:44.293968" elapsed="0.000399"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.294783" 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-08-10T02:07:44.294516" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.295668" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.294955" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.296165" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.295852" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.296682" 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-08-10T02:07:44.296375" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.297195" 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-08-10T02:07:44.296872" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.297708" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.297406" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.298209" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.297902" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.298767" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff01d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.298419" 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-08-10T02:07:44.291364" elapsed="0.007500"/>
</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-08-10T02:07:44.313268" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.313312" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.313420" 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-08-10T02:07:44.305754" elapsed="0.007692"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.316311" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.313609" elapsed="0.002783"/>
</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-08-10T02:07:44.305366" elapsed="0.011105"/>
</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-08-10T02:07:44.299010" elapsed="0.017532"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.286647" elapsed="0.029947"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.317267" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.316901" 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-08-10T02:07:44.322170" 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-08-10T02:07:44.322310" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.321961" elapsed="0.000394"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.322884" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1120&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.322506" elapsed="0.000406"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.323357" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.323063" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.323801" 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-08-10T02:07:44.323534" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.324240" 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-08-10T02:07:44.323973" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.324948" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.324429" elapsed="0.000549"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.325476" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.325129" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.325970" 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-08-10T02:07:44.325668" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.326488" 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-08-10T02:07:44.326163" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.326972" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.326675" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.327483" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.327163" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.327976" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1120&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.327675" 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-08-10T02:07:44.321495" elapsed="0.006614"/>
</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-08-10T02:07:44.342032" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.342079" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.342166" 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-08-10T02:07:44.334997" elapsed="0.007195"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.344258" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.342369" elapsed="0.001931"/>
</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-08-10T02:07:44.334617" elapsed="0.009755"/>
</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-08-10T02:07:44.328256" elapsed="0.016168"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.316727" elapsed="0.027734"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.344927" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.344683" elapsed="0.000287"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.349592" 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-08-10T02:07:44.349767" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.349404" elapsed="0.000403"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.350609" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.350014" elapsed="0.000634"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.351239" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.350856" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.351899" 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-08-10T02:07:44.351517" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.352539" 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-08-10T02:07:44.352142" elapsed="0.000433"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.353823" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.352779" elapsed="0.001086"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.354465" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.354095" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.354963" 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-08-10T02:07:44.354660" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.355477" 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-08-10T02:07:44.355152" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.355967" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.355668" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.356479" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.356160" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.356984" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.356674" 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-08-10T02:07:44.348899" elapsed="0.008218"/>
</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-08-10T02:07:44.370772" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.370834" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.370967" 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-08-10T02:07:44.364001" elapsed="0.007002"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.373928" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.371224" elapsed="0.002763"/>
</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-08-10T02:07:44.363621" elapsed="0.010450"/>
</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-08-10T02:07:44.357277" elapsed="0.016865"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.344556" elapsed="0.029636"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.374869" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.374526" elapsed="0.000404"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.379719" 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-08-10T02:07:44.379891" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:44.379533" elapsed="0.000397"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.380705" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32e30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.380142" elapsed="0.000602"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.381375" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.380951" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.381995" 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-08-10T02:07:44.381622" elapsed="0.000409"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.382635" 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-08-10T02:07:44.382235" elapsed="0.000436"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.383949" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:44.382879" elapsed="0.001112"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.384681" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.384204" elapsed="0.000535"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.385438" 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-08-10T02:07:44.384950" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.386167" 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-08-10T02:07:44.385706" elapsed="0.000511"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.386690" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.386390" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.387185" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.386882" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.387705" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32e30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.387395" 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-08-10T02:07:44.379049" elapsed="0.008789"/>
</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-08-10T02:07:44.401526" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.401609" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.401790" 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-08-10T02:07:44.394699" elapsed="0.007138"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.404804" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.402131" elapsed="0.002731"/>
</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-08-10T02:07:44.394304" elapsed="0.010637"/>
</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-08-10T02:07:44.387987" elapsed="0.017025"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.374326" elapsed="0.030738"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.405766" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.405417" elapsed="0.000411"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.410610" 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-08-10T02:07:44.410793" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:44.410421" elapsed="0.000413"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.411636" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.411039" elapsed="0.000636"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.412269" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.411883" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.412920" 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-08-10T02:07:44.412547" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.413600" 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-08-10T02:07:44.413161" elapsed="0.000475"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.414565" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:44.413841" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.415061" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.414747" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.415578" 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-08-10T02:07:44.415255" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.416071" 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-08-10T02:07:44.415765" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.416571" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.416257" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.417142" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.416836" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.417687" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.417372" 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-08-10T02:07:44.409939" elapsed="0.007880"/>
</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-08-10T02:07:44.433365" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.433433" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.433576" 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-08-10T02:07:44.424884" elapsed="0.008728"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.436497" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.433828" elapsed="0.002727"/>
</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-08-10T02:07:44.424505" elapsed="0.012129"/>
</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-08-10T02:07:44.417969" elapsed="0.018737"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.405203" elapsed="0.031554"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.437470" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.437067" elapsed="0.000465"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.442314" 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-08-10T02:07:44.442545" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:44.442127" elapsed="0.000459"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.443356" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.442794" elapsed="0.000603"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.443986" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.443608" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.444630" 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-08-10T02:07:44.444230" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.445241" 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-08-10T02:07:44.444873" elapsed="0.000442"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.446349" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:44.445546" elapsed="0.000835"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.446847" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.446535" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.447357" 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-08-10T02:07:44.447040" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.447856" 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-08-10T02:07:44.447549" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.448358" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:44.448046" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.448854" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:44.448553" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.449390" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.449046" 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-08-10T02:07:44.441664" elapsed="0.007824"/>
</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-08-10T02:07:44.466576" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.466621" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.466710" 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-08-10T02:07:44.456464" elapsed="0.010272"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.469814" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.466890" elapsed="0.002984"/>
</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-08-10T02:07:44.456068" elapsed="0.013885"/>
</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-08-10T02:07:44.449692" elapsed="0.020334"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.436894" elapsed="0.033183"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.470759" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.470413" 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-08-10T02:07:44.475635" 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-08-10T02:07:44.475809" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:44.475446" elapsed="0.000403"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.476626" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4ea0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.476054" elapsed="0.000610"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.477253" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.476871" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.477936" 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-08-10T02:07:44.477561" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.478494" 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-08-10T02:07:44.478197" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.479310" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:44.478666" elapsed="0.000692"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.479825" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.479512" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.480320" 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-08-10T02:07:44.480015" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.480835" 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-08-10T02:07:44.480526" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.481353" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.481023" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.481860" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.481558" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.482376" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4ea0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.482049" 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-08-10T02:07:44.474946" elapsed="0.007533"/>
</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-08-10T02:07:44.497195" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.497260" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.497436" 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-08-10T02:07:44.489463" elapsed="0.008010"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.500556" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.497698" elapsed="0.002918"/>
</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-08-10T02:07:44.489040" elapsed="0.011655"/>
</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-08-10T02:07:44.482676" elapsed="0.018091"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.470212" elapsed="0.030605"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.501513" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.501130" elapsed="0.000445"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.506358" 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-08-10T02:07:44.506485" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:44.506197" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.507042" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31da0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.506661" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.507510" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.507218" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.507960" 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-08-10T02:07:44.507692" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.508419" 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-08-10T02:07:44.508133" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.509180" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:44.508591" elapsed="0.000619"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.509706" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.509393" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.510200" 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-08-10T02:07:44.509897" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.510717" 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-08-10T02:07:44.510407" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.511199" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:44.510903" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.511712" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:44.511406" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.512209" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31da0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.511905" 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-08-10T02:07:44.505715" elapsed="0.006589"/>
</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-08-10T02:07:44.526007" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.526055" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.526144" 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-08-10T02:07:44.519229" elapsed="0.006941"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.528399" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.526326" elapsed="0.002116"/>
</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-08-10T02:07:44.518849" elapsed="0.009650"/>
</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-08-10T02:07:44.512466" elapsed="0.016084"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.500954" elapsed="0.027633"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.529053" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.528809" elapsed="0.000287"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.533645" 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-08-10T02:07:44.533820" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.533455" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.534658" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6fc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.534067" elapsed="0.000629"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.535291" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.534905" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.535936" 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-08-10T02:07:44.535562" elapsed="0.000409"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.536574" 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-08-10T02:07:44.536178" elapsed="0.000432"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.537835" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.536815" elapsed="0.001063"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.538479" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.538114" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.538974" 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-08-10T02:07:44.538671" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.539486" 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-08-10T02:07:44.539161" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.539971" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.539676" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.540480" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.540162" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.540976" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6fc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.540674" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:44.532953" elapsed="0.008117"/>
</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-08-10T02:07:44.556472" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.556540" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.556663" 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-08-10T02:07:44.548002" elapsed="0.008697"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.559798" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.556913" elapsed="0.002944"/>
</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-08-10T02:07:44.547574" elapsed="0.012364"/>
</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-08-10T02:07:44.541214" elapsed="0.018794"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.528682" elapsed="0.031378"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.560738" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.560392" elapsed="0.000407"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.565596" 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-08-10T02:07:44.565773" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.565408" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.566619" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32980&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.566019" elapsed="0.000639"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.567248" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.566868" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.567886" 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-08-10T02:07:44.567515" elapsed="0.000406"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.568522" 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-08-10T02:07:44.568128" elapsed="0.000430"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.569827" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.568761" elapsed="0.001108"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.570478" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.570103" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.570973" 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-08-10T02:07:44.570670" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.571488" 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-08-10T02:07:44.571163" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.571974" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.571677" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.572485" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.572166" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.572977" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32980&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.572677" elapsed="0.000341"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:44.564913" elapsed="0.008160"/>
</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-08-10T02:07:44.586941" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.586985" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.587089" 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-08-10T02:07:44.579924" elapsed="0.007209"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.590278" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.587412" elapsed="0.002947"/>
</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-08-10T02:07:44.579547" elapsed="0.010893"/>
</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-08-10T02:07:44.573222" elapsed="0.017289"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.560193" elapsed="0.030370"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.591215" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.590869" 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-08-10T02:07:44.596029" 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-08-10T02:07:44.596204" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.595843" elapsed="0.000401"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.597047" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e59e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.596474" elapsed="0.000611"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.597737" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.597293" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.598331" 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-08-10T02:07:44.597982" elapsed="0.000392"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.598790" 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-08-10T02:07:44.598524" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.599687" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.598962" elapsed="0.000756"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.600183" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.599872" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.600697" 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-08-10T02:07:44.600392" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.601192" 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-08-10T02:07:44.600885" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.601709" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.601410" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.602200" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.601901" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.602713" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e59e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.602407" 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-08-10T02:07:44.595382" elapsed="0.007425"/>
</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-08-10T02:07:44.616746" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.616869" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.616998" 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-08-10T02:07:44.609684" elapsed="0.007350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.621043" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.617252" elapsed="0.003851"/>
</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-08-10T02:07:44.609283" elapsed="0.011900"/>
</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-08-10T02:07:44.602951" elapsed="0.018304"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.590696" elapsed="0.030611"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.622762" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.622415" 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-08-10T02:07:44.627746" 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-08-10T02:07:44.627922" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.627560" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.628761" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036ed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.628169" elapsed="0.000630"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.629447" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.629008" elapsed="0.000478"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.630075" 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-08-10T02:07:44.629698" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.630719" 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-08-10T02:07:44.630321" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.631940" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.630960" elapsed="0.001022"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.632661" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.632196" elapsed="0.000523"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.633376" 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-08-10T02:07:44.632930" elapsed="0.000541"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.634150" 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-08-10T02:07:44.633686" elapsed="0.000516"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.634681" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.634380" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.635177" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.634873" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.635691" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036ed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.635386" 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-08-10T02:07:44.627072" elapsed="0.008714"/>
</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-08-10T02:07:44.649440" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.649522" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.649621" 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-08-10T02:07:44.642678" elapsed="0.006969"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.652628" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.649801" elapsed="0.002888"/>
</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-08-10T02:07:44.642287" elapsed="0.010481"/>
</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-08-10T02:07:44.635929" elapsed="0.016910"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.622202" elapsed="0.030689"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.653583" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.653201" 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-08-10T02:07:44.658397" 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-08-10T02:07:44.658524" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.658245" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.659105" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e4d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.658702" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.659576" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.659283" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.660014" 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-08-10T02:07:44.659750" elapsed="0.000289"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.660471" 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-08-10T02:07:44.660188" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.661348" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.660644" elapsed="0.000736"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.661857" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.661544" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.662368" 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-08-10T02:07:44.662048" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.662863" 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-08-10T02:07:44.662557" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.663362" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.663050" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.663858" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.663555" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.664376" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e4d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.664051" 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-08-10T02:07:44.657769" elapsed="0.006703"/>
</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-08-10T02:07:44.678697" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.678743" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.678870" 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-08-10T02:07:44.671347" elapsed="0.007550"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.682024" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.679059" 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-08-10T02:07:44.670950" elapsed="0.011220"/>
</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-08-10T02:07:44.664616" elapsed="0.017625"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.653025" elapsed="0.029268"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.682972" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.682630" elapsed="0.000403"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.687832" 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-08-10T02:07:44.688008" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.687649" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.688847" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6ac0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.688253" elapsed="0.000633"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.689539" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.689096" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.690185" 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-08-10T02:07:44.689790" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.690661" 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-08-10T02:07:44.690392" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.691547" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.690835" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.692043" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.691732" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.692559" 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-08-10T02:07:44.692235" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.693055" 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-08-10T02:07:44.692747" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.693578" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.693249" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.694074" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.693772" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.694687" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6ac0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.694290" elapsed="0.000441"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:44.687165" elapsed="0.007622"/>
</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-08-10T02:07:44.708461" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.708506" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.708634" 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-08-10T02:07:44.701659" elapsed="0.007002"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.711679" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.708817" elapsed="0.002922"/>
</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-08-10T02:07:44.701240" elapsed="0.010580"/>
</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-08-10T02:07:44.694935" elapsed="0.016957"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.682453" elapsed="0.029491"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.712627" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.712256" 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-08-10T02:07:44.717526" 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-08-10T02:07:44.717708" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.717278" elapsed="0.000471"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.718488" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d6c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.717957" elapsed="0.000560"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.718942" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.718667" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.719404" 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-08-10T02:07:44.719117" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.719848" 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-08-10T02:07:44.719580" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.720769" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.720022" elapsed="0.000777"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.721272" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.720953" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.721803" 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-08-10T02:07:44.721495" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.722302" 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-08-10T02:07:44.721993" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.722807" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.722509" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.723302" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.722999" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.723818" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d6c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.723513" 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-08-10T02:07:44.716812" elapsed="0.007101"/>
</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-08-10T02:07:44.738883" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.738927" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.739016" 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-08-10T02:07:44.730787" elapsed="0.008303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.741318" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.739252" elapsed="0.002125"/>
</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-08-10T02:07:44.730410" elapsed="0.011025"/>
</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-08-10T02:07:44.724058" elapsed="0.017459"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.712077" elapsed="0.029480"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.742026" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.741781" 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-08-10T02:07:44.746929" 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-08-10T02:07:44.747106" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.746742" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.747961" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31ad0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.747378" elapsed="0.000623"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.748624" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.748210" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.749246" 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-08-10T02:07:44.748869" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.749943" 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-08-10T02:07:44.749562" elapsed="0.000417"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.750972" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.750210" elapsed="0.000793"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.751487" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.751157" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.751985" 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-08-10T02:07:44.751680" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.752497" 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-08-10T02:07:44.752172" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.752982" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.752686" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.753509" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.753178" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.754014" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31ad0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.753704" 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-08-10T02:07:44.746259" elapsed="0.007848"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:44.767761" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.767824" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.767946" 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-08-10T02:07:44.760981" elapsed="0.007047"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.771211" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.768257" elapsed="0.003014"/>
</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-08-10T02:07:44.760606" elapsed="0.010768"/>
</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-08-10T02:07:44.754253" elapsed="0.017194"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.741654" elapsed="0.029845"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.772154" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.771806" 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-08-10T02:07:44.777032" 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-08-10T02:07:44.777207" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.776846" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.778082" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.777480" elapsed="0.000643"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.778739" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.778331" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.779397" 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-08-10T02:07:44.778984" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.780017" 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-08-10T02:07:44.779645" elapsed="0.000408"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.781312" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.780258" elapsed="0.001119"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.782079" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.781637" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.782840" 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-08-10T02:07:44.782377" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.783363" 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-08-10T02:07:44.783036" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.783854" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.783557" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.784369" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.784047" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.784867" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.784565" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:44.776376" elapsed="0.008585"/>
</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-08-10T02:07:44.798161" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.798235" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.798401" 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-08-10T02:07:44.791842" elapsed="0.006597"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.801636" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.798716" elapsed="0.002979"/>
</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-08-10T02:07:44.791468" elapsed="0.010310"/>
</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-08-10T02:07:44.785106" elapsed="0.016742"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.771632" elapsed="0.030268"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.802581" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.802208" 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-08-10T02:07:44.807457" 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-08-10T02:07:44.807632" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.807247" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.808462" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.807881" elapsed="0.000620"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.809091" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.808711" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.809776" 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-08-10T02:07:44.809355" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.810395" 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-08-10T02:07:44.810020" elapsed="0.000401"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.811215" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.810568" elapsed="0.000677"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.811729" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.811416" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.812225" 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-08-10T02:07:44.811922" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.812739" 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-08-10T02:07:44.812431" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.813230" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.812928" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.813754" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.813438" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.814248" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.813947" elapsed="0.000342"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:44.806784" elapsed="0.007575"/>
</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-08-10T02:07:44.832125" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.832169" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.832259" 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-08-10T02:07:44.821203" elapsed="0.011082"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.834847" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.832511" elapsed="0.002397"/>
</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-08-10T02:07:44.820825" elapsed="0.014164"/>
</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-08-10T02:07:44.814507" elapsed="0.020555"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.802033" elapsed="0.033086"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.835803" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.835456" 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-08-10T02:07:44.840686" 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-08-10T02:07:44.840862" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.840498" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.841750" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0da430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.841109" elapsed="0.000680"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.842394" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.841998" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.842838" 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-08-10T02:07:44.842570" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.843279" 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-08-10T02:07:44.843012" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.844199" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.843467" elapsed="0.000763"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.844727" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.844404" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.845222" 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-08-10T02:07:44.844918" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.845752" 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-08-10T02:07:44.845428" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.846236" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.845941" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.846747" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:44.846446" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.847246" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0da430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.846939" 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-08-10T02:07:44.840003" elapsed="0.007353"/>
</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-08-10T02:07:44.860882" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.860927" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.861015" 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-08-10T02:07:44.854196" elapsed="0.006845"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.864248" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.861362" elapsed="0.002948"/>
</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-08-10T02:07:44.853820" elapsed="0.010592"/>
</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-08-10T02:07:44.847504" elapsed="0.016980"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.835255" elapsed="0.029281"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.865191" level="INFO">f156.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.864848" 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-08-10T02:07:44.870069" 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-08-10T02:07:44.870266" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:44.869883" elapsed="0.000419"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.870873" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff19e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.870478" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.871321" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.871049" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.871779" 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-08-10T02:07:44.871512" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.872216" 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-08-10T02:07:44.871950" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.873062" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:44.872402" elapsed="0.000694"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.873597" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.873252" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.874099" 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-08-10T02:07:44.873791" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.874617" 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-08-10T02:07:44.874289" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.875103" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.874808" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.875616" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.875295" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.876115" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff19e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.875809" 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-08-10T02:07:44.869375" elapsed="0.006835"/>
</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-08-10T02:07:44.889722" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.889768" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.889855" 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-08-10T02:07:44.883123" elapsed="0.006761"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.892120" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.890073" elapsed="0.002089"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-08-10T02:07:44.882748" elapsed="0.009471"/>
</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-08-10T02:07:44.876371" elapsed="0.015898"/>
</kw>
<var name="${flowfile}">f156.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.864672" elapsed="0.027634"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.892792" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.892546" elapsed="0.000290"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:44.897195" 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-08-10T02:07:44.897391" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:44.897005" elapsed="0.000428"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.898213" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d9300&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.897656" elapsed="0.000595"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.898864" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.898483" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.899504" 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-08-10T02:07:44.899106" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.900125" 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-08-10T02:07:44.899749" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.901317" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.900389" elapsed="0.000993"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.902078" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.901635" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.902683" 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-08-10T02:07:44.902377" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.903185" 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-08-10T02:07:44.902872" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.903688" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:44.903391" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.904185" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.903880" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.904697" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d9300&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.904394" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:44.896542" elapsed="0.008249"/>
</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-08-10T02:07:44.924699" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.924745" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.924836" 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-08-10T02:07:44.915742" elapsed="0.009119"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.927205" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.925073" elapsed="0.002175"/>
</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-08-10T02:07:44.914828" elapsed="0.012478"/>
</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-08-10T02:07:44.904938" elapsed="0.022437"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.892420" elapsed="0.034993"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.927890" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.927640" 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-08-10T02:07:44.931903" 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-08-10T02:07:44.932118" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:44.931714" elapsed="0.000445"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.932963" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dbbf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.932389" elapsed="0.000613"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.933715" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.933261" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.934360" 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-08-10T02:07:44.933961" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.934980" 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-08-10T02:07:44.934607" elapsed="0.000408"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.936177" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.935220" elapsed="0.000999"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.936896" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.936456" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.937610" 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-08-10T02:07:44.937163" elapsed="0.000559"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.938358" 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-08-10T02:07:44.937933" elapsed="0.000467"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.938845" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:44.938549" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.939357" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.939038" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.939907" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dbbf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.939604" 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-08-10T02:07:44.931228" elapsed="0.008774"/>
</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-08-10T02:07:44.953719" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.953765" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.953853" 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-08-10T02:07:44.946890" elapsed="0.006988"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.957020" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.954050" 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-08-10T02:07:44.946513" elapsed="0.010646"/>
</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-08-10T02:07:44.940147" elapsed="0.017082"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.927512" elapsed="0.029769"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.957982" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.957618" 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-08-10T02:07:44.962879" 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-08-10T02:07:44.963053" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:44.962692" elapsed="0.000401"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.963883" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36ae30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.963299" elapsed="0.000623"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.964537" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.964130" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.965153" 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-08-10T02:07:44.964781" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.965835" 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-08-10T02:07:44.965421" elapsed="0.000450"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.966752" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.966068" elapsed="0.000714"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.967249" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.966935" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.967762" 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-08-10T02:07:44.967458" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.968263" 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-08-10T02:07:44.967951" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.968765" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:44.968469" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.969257" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.968957" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.969796" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36ae30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.969465" 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-08-10T02:07:44.962207" elapsed="0.007685"/>
</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-08-10T02:07:44.983977" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:44.984052" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:44.984204" 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-08-10T02:07:44.976803" elapsed="0.007446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.988419" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.984502" elapsed="0.004027"/>
</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-08-10T02:07:44.976423" elapsed="0.012187"/>
</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-08-10T02:07:44.970039" elapsed="0.018641"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.957439" elapsed="0.031291"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.989406" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:44.989039" 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-08-10T02:07:44.994266" 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-08-10T02:07:44.994469" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:44.994080" elapsed="0.000430"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:44.995280" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bf60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:44.994721" elapsed="0.000598"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.995945" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:44.995561" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.996586" 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-08-10T02:07:44.996189" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:44.997197" 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-08-10T02:07:44.996828" elapsed="0.000405"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:44.998408" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:44.997462" elapsed="0.000976"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.998904" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:44.998591" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.999421" 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-08-10T02:07:44.999100" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:44.999920" 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-08-10T02:07:44.999610" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.000421" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:45.000107" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.000919" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:45.000615" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.001435" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bf60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.001113" 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-08-10T02:07:44.993601" elapsed="0.007930"/>
</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-08-10T02:07:45.018712" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.018775" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.018897" 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-08-10T02:07:45.008441" elapsed="0.010491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.022081" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.019152" elapsed="0.002997"/>
</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-08-10T02:07:45.008049" elapsed="0.014240"/>
</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-08-10T02:07:45.001699" elapsed="0.020689"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-08-10T02:07:44.988864" elapsed="0.033577"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.023098" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.022754" 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-08-10T02:07:45.027972" 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-08-10T02:07:45.028153" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:45.027786" elapsed="0.000407"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.028995" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d92b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.028422" elapsed="0.000612"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.029653" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.029243" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.030308" 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-08-10T02:07:45.029933" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.030950" 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-08-10T02:07:45.030578" elapsed="0.000408"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.032219" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:45.031196" elapsed="0.001065"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.032931" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.032496" elapsed="0.000493"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.033647" 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-08-10T02:07:45.033198" elapsed="0.000551"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.034303" 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-08-10T02:07:45.033969" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.034808" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.034512" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.035302" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.035000" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.035817" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d92b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.035513" 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-08-10T02:07:45.027259" elapsed="0.008651"/>
</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-08-10T02:07:45.050410" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.050473" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.050597" 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-08-10T02:07:45.043735" elapsed="0.006897"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.053751" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.050846" elapsed="0.002966"/>
</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-08-10T02:07:45.043354" elapsed="0.010589"/>
</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-08-10T02:07:45.036055" elapsed="0.017962"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.022577" elapsed="0.031492"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.054768" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.054405" elapsed="0.000430"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:45.059434" 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-08-10T02:07:45.059560" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:45.059284" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.060147" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3697b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.059739" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.060617" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.060325" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.061057" 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-08-10T02:07:45.060792" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.061517" 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-08-10T02:07:45.061231" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.062440" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:45.061688" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.062933" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.062623" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.063445" 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-08-10T02:07:45.063125" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.063943" 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-08-10T02:07:45.063634" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.064443" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.064129" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.064937" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.064635" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.065445" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3697b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.065126" 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-08-10T02:07:45.058953" elapsed="0.006588"/>
</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-08-10T02:07:45.078098" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.078143" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.078231" 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-08-10T02:07:45.072431" elapsed="0.005825"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.080487" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.078433" elapsed="0.002096"/>
</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-08-10T02:07:45.072031" elapsed="0.008554"/>
</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-08-10T02:07:45.065686" elapsed="0.014986"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.054205" elapsed="0.026505"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.081184" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.080933" 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-08-10T02:07:45.085824" 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-08-10T02:07:45.086029" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:45.085622" elapsed="0.000455"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.086918" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d8d10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.086322" elapsed="0.000635"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.087581" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.087172" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.088197" 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-08-10T02:07:45.087825" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.088840" 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-08-10T02:07:45.088465" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.090091" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:45.089083" elapsed="0.001039"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.090610" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.090276" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.091110" 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-08-10T02:07:45.090800" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.091624" 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-08-10T02:07:45.091298" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.092107" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:45.091812" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.092619" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:45.092299" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.093114" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d8d10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.092812" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:45.085133" elapsed="0.008076"/>
</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-08-10T02:07:45.106856" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.106900" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.106988" 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-08-10T02:07:45.100118" elapsed="0.006900"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.110194" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.107272" elapsed="0.002986"/>
</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-08-10T02:07:45.099735" elapsed="0.010624"/>
</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-08-10T02:07:45.093370" elapsed="0.017114"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.080807" elapsed="0.029730"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.111193" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.110850" elapsed="0.000404"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:45.116080" 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-08-10T02:07:45.116256" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:45.115894" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.117078" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff3380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.116528" elapsed="0.000589"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.117733" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.117325" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.118349" 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-08-10T02:07:45.118014" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.118792" 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-08-10T02:07:45.118526" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.119623" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:45.118963" elapsed="0.000690"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.120114" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.119804" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.120627" 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-08-10T02:07:45.120304" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.121126" 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-08-10T02:07:45.120816" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.121633" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:45.121314" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.122149" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:45.121840" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.122664" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff3380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.122357" 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-08-10T02:07:45.115432" elapsed="0.007327"/>
</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-08-10T02:07:45.138161" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.138244" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.138446" 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-08-10T02:07:45.129678" elapsed="0.008814"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.141978" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.138770" elapsed="0.003272"/>
</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-08-10T02:07:45.129278" elapsed="0.012849"/>
</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-08-10T02:07:45.122904" elapsed="0.019362"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.110675" elapsed="0.031650"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.143060" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.142692" elapsed="0.000434"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:45.147538" 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-08-10T02:07:45.147683" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:45.147400" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.148296" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.147860" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.148772" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.148497" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.149214" 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-08-10T02:07:45.148948" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.149675" 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-08-10T02:07:45.149407" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.150446" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:45.149885" elapsed="0.000591"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.150947" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.150630" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.151462" 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-08-10T02:07:45.151142" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.151958" 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-08-10T02:07:45.151651" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.152458" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:45.152145" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.152953" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:45.152652" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.153466" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.153144" 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-08-10T02:07:45.147043" elapsed="0.006520"/>
</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-08-10T02:07:45.167621" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.167665" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.167752" 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-08-10T02:07:45.160463" elapsed="0.007315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.170016" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.167933" 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-08-10T02:07:45.160071" elapsed="0.010094"/>
</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-08-10T02:07:45.153709" elapsed="0.016531"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.142500" elapsed="0.027867"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.171066" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.170704" 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-08-10T02:07:45.176221" 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-08-10T02:07:45.176428" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:45.176027" elapsed="0.000444"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.177265" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0daa70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.176691" elapsed="0.000613"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.177961" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.177539" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.178488" 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-08-10T02:07:45.178166" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.178936" 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-08-10T02:07:45.178666" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.179745" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:45.179113" elapsed="0.000662"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.180239" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.179928" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.180751" 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-08-10T02:07:45.180447" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.181246" 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-08-10T02:07:45.180940" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.181749" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:45.181451" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.182280" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:45.181971" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.182799" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0daa70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.182496" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:45.175536" elapsed="0.007358"/>
</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-08-10T02:07:45.196858" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.196923" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.197055" 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-08-10T02:07:45.189745" elapsed="0.007349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.200471" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.197323" elapsed="0.003212"/>
</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-08-10T02:07:45.189368" elapsed="0.011251"/>
</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-08-10T02:07:45.183040" elapsed="0.017654"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.170514" elapsed="0.030285"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.201520" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.201131" 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-08-10T02:07:45.206716" 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-08-10T02:07:45.206897" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:45.206520" elapsed="0.000420"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.207753" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.207164" elapsed="0.000630"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.208446" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.208016" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.209097" 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-08-10T02:07:45.208704" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.209769" 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-08-10T02:07:45.209374" elapsed="0.000433"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.210631" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:45.210053" elapsed="0.000608"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.211127" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.210813" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.211641" 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-08-10T02:07:45.211318" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.212137" 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-08-10T02:07:45.211830" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.212642" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:45.212326" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.213136" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:45.212835" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.213648" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.213328" 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-08-10T02:07:45.206006" elapsed="0.007736"/>
</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-08-10T02:07:45.227243" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.227310" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.227473" 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-08-10T02:07:45.220625" elapsed="0.006886"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.230912" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.227740" elapsed="0.003236"/>
</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-08-10T02:07:45.220228" elapsed="0.010833"/>
</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-08-10T02:07:45.213929" elapsed="0.017208"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.200943" elapsed="0.030302"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.231972" level="INFO">f221.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.231607" 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-08-10T02:07:45.236502" 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-08-10T02:07:45.236632" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:45.236365" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.237205" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7d30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.236808" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.237673" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.237399" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.238148" 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-08-10T02:07:45.237848" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.238609" 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-08-10T02:07:45.238321" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.239437" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:45.238781" elapsed="0.000686"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.239936" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.239621" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.240446" 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-08-10T02:07:45.240128" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.240946" 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-08-10T02:07:45.240637" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.241448" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.241134" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.241974" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.241641" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.242495" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7d30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.242170" 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-08-10T02:07:45.236010" elapsed="0.006581"/>
</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-08-10T02:07:45.258143" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.258188" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.258276" 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-08-10T02:07:45.249916" elapsed="0.008386"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.262524" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.258479" elapsed="0.004142"/>
</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-08-10T02:07:45.249511" elapsed="0.013236"/>
</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-08-10T02:07:45.242736" elapsed="0.020124"/>
</kw>
<var name="${flowfile}">f221.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.231418" elapsed="0.031591"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.264093" level="INFO">f222.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.263546" elapsed="0.000645"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:45.271486" 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-08-10T02:07:45.271621" 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-08-10T02:07:45.271325" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.272168" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30db0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.271798" elapsed="0.000398"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.272637" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.272362" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.273076" 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-08-10T02:07:45.272811" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.273538" 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-08-10T02:07:45.273249" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.274218" 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-08-10T02:07:45.273711" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.274730" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.274416" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.275223" 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-08-10T02:07:45.274920" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.275739" 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-08-10T02:07:45.275429" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.276223" 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-08-10T02:07:45.275926" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.276733" 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-08-10T02:07:45.276430" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.277226" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30db0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.276923" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:45.270890" elapsed="0.006431"/>
</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-08-10T02:07:45.291743" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.291788" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.291876" 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-08-10T02:07:45.284243" elapsed="0.007658"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.294016" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.292056" elapsed="0.002007"/>
</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-08-10T02:07:45.283860" elapsed="0.010261"/>
</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-08-10T02:07:45.277484" elapsed="0.016688"/>
</kw>
<var name="${flowfile}">f222.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.263230" elapsed="0.030979"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.294734" level="INFO">f223.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.294488" elapsed="0.000290"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:45.302194" 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-08-10T02:07:45.302508" 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-08-10T02:07:45.301834" elapsed="0.000741"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.303541" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.302908" elapsed="0.000661"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.303992" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.303719" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.304494" 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-08-10T02:07:45.304167" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.305090" 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-08-10T02:07:45.304672" elapsed="0.000445"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.305783" 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-08-10T02:07:45.305266" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.306308" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.305988" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.306824" 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-08-10T02:07:45.306521" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.307369" 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-08-10T02:07:45.307013" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.307936" 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-08-10T02:07:45.307600" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.308528" 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-08-10T02:07:45.308165" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.309121" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.308755" 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-08-10T02:07:45.301063" elapsed="0.008165"/>
</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-08-10T02:07:45.325294" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.325368" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.325477" 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-08-10T02:07:45.317606" elapsed="0.007897"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.327925" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.325663" elapsed="0.002325"/>
</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-08-10T02:07:45.317135" elapsed="0.010938"/>
</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-08-10T02:07:45.309415" elapsed="0.018734"/>
</kw>
<var name="${flowfile}">f223.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.294360" elapsed="0.033845"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.328982" level="INFO">f224.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.328570" 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-08-10T02:07:45.334401" 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-08-10T02:07:45.334619" 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-08-10T02:07:45.334166" elapsed="0.000497"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.335498" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ca90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.334887" elapsed="0.000661"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.336199" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.335777" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.336903" 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-08-10T02:07:45.336487" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.337607" 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-08-10T02:07:45.337167" elapsed="0.000481"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.338739" 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-08-10T02:07:45.337872" elapsed="0.000913"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.339527" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.339020" elapsed="0.000570"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.340294" 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-08-10T02:07:45.339828" elapsed="0.000554"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.341087" 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-08-10T02:07:45.340606" elapsed="0.000543"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.341869" 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-08-10T02:07:45.341396" elapsed="0.000633"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.342784" 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-08-10T02:07:45.342282" elapsed="0.000570"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.343383" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ca90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.343061" 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-08-10T02:07:45.333605" elapsed="0.009878"/>
</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-08-10T02:07:45.358527" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.358576" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.358688" 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-08-10T02:07:45.350633" elapsed="0.008081"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.360841" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.358889" elapsed="0.001995"/>
</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-08-10T02:07:45.350199" elapsed="0.010742"/>
</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-08-10T02:07:45.343631" elapsed="0.017362"/>
</kw>
<var name="${flowfile}">f224.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.328378" elapsed="0.032652"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.361546" level="INFO">f225.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.361283" 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-08-10T02:07:45.366217" 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-08-10T02:07:45.366449" 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-08-10T02:07:45.366007" elapsed="0.000486"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.367285" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0340e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.366714" elapsed="0.000611"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.367977" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.367573" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.368658" 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-08-10T02:07:45.368237" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.369307" 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-08-10T02:07:45.368915" elapsed="0.000452"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.370432" 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-08-10T02:07:45.369588" elapsed="0.000888"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.371129" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.370707" elapsed="0.000463"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.371641" 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-08-10T02:07:45.371319" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.372138" 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-08-10T02:07:45.371831" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.372639" 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-08-10T02:07:45.372326" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.373133" 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-08-10T02:07:45.372832" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.373645" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0340e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.373325" 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-08-10T02:07:45.365497" elapsed="0.008243"/>
</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-08-10T02:07:45.388682" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.388747" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.388876" 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-08-10T02:07:45.380674" elapsed="0.008239"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.393572" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.389141" elapsed="0.004494"/>
</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-08-10T02:07:45.380280" elapsed="0.013438"/>
</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-08-10T02:07:45.373886" elapsed="0.019906"/>
</kw>
<var name="${flowfile}">f225.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.361154" elapsed="0.032693"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.394582" level="INFO">f550.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.394193" 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-08-10T02:07:45.399839" 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-08-10T02:07:45.400021" 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-08-10T02:07:45.399641" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:45.400868" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:45.400284" elapsed="0.000624"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.401554" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:45.401128" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.402227" 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-08-10T02:07:45.401815" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:45.402904" 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-08-10T02:07:45.402509" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:45.404136" 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-08-10T02:07:45.403160" elapsed="0.001020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.404898" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.404432" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.405657" 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-08-10T02:07:45.405181" elapsed="0.000538"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.406486" 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-08-10T02:07:45.405938" elapsed="0.000609"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.407156" 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-08-10T02:07:45.406770" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.407670" 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-08-10T02:07:45.407364" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.408170" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:45.407865" 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-08-10T02:07:45.399131" elapsed="0.009134"/>
</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-08-10T02:07:45.422910" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:45.422955" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:07:45.423064" 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-08-10T02:07:45.415150" elapsed="0.007952"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:45.426460" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:45.423329" elapsed="0.003196"/>
</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-08-10T02:07:45.414774" elapsed="0.011833"/>
</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-08-10T02:07:45.408429" elapsed="0.018253"/>
</kw>
<var name="${flowfile}">f550.xml</var>
<status status="PASS" start="2026-08-10T02:07:45.394005" elapsed="0.032732"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-08-10T02:07:43.657589" elapsed="1.769194"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.427733" 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-08-10T02:07:45.427008" elapsed="3.000949"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:48.433404" 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-08-10T02:07:48.428706" elapsed="0.004780"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:48.462328" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=33.180s, table=0, n_packets=16, n_bytes=1272, 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-08-10T02:07:48.433700" elapsed="0.028708"/>
</kw>
<doc>Delete all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-08-10T02:07:43.657210" elapsed="4.805362"/>
</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-08-10T02:07:48.474284" 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-08-10T02:07:48.474466" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:48.474125" elapsed="0.000371"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:48.475117" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397330&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:48.474652" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.475599" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:48.475298" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.476047" 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-08-10T02:07:48.475777" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.476570" 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-08-10T02:07:48.476263" elapsed="0.000333"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.477395" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:48.476747" elapsed="0.000679"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.477929" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.477590" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.478461" 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-08-10T02:07:48.478121" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.478979" 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-08-10T02:07:48.478653" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.479500" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.479170" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.480010" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.479696" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.480569" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397330&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.480203" 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-08-10T02:07:48.473787" elapsed="0.006879"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.481220" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:48.480818" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.481664" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:48.481418" 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-08-10T02:07:48.489588" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.489252" elapsed="0.000364"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.495991" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.496700" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:48.496812" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.489746" elapsed="0.007093"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.497390" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.497009" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.500971" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.497657" elapsed="0.003387"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:48.503676" elapsed="0.000051"/>
</return>
<status status="PASS" start="2026-08-10T02:07:48.501163" elapsed="0.002621"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.501126" 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-08-10T02:07:48.504022" 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-08-10T02:07:48.504400" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.504148" elapsed="0.000328"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:48.504125" elapsed="0.000383"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.504555" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:48.506367" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:48.506413" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:48.488933" elapsed="0.017503"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.508600" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.506985" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.506967" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.509218" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.508814" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.509775" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.509423" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.509850" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:48.510028" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:48.506655" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.510211" 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-08-10T02:07:48.488324" elapsed="0.022369"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.518499" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.518181" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.523850" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.524057" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:48.524157" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.518656" elapsed="0.005531"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.524646" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.524391" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.526844" 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-08-10T02:07:48.524835" elapsed="0.002060"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.528772" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.526964" elapsed="0.001859"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.526945" elapsed="0.001900"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.532553" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:48.532617" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:48.528989" elapsed="0.003660"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:48.535403" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.532756" elapsed="0.002728"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.532730" elapsed="0.002788"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:48.535566" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:48.535837" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:48.535897" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:48.517804" elapsed="0.018124"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.538515" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.536746" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.536722" elapsed="0.001860"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.539124" 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-08-10T02:07:48.538727" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.539679" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.539312" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.539754" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:48.539930" 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-08-10T02:07:48.536229" elapsed="0.003726"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.540110" 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-08-10T02:07:48.517154" elapsed="0.023457"/>
</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-08-10T02:07:48.470506" elapsed="0.070161"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:48.463022" elapsed="0.077765"/>
</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-08-10T02:07:48.552124" 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-08-10T02:07:48.552289" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:48.551983" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:48.552884" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31e40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:48.552486" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.553418" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:48.553065" elapsed="0.000380"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.553867" 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-08-10T02:07:48.553596" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.554311" 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-08-10T02:07:48.554042" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.555106" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:48.554503" elapsed="0.000634"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.555636" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.555291" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.556145" 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-08-10T02:07:48.555830" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.556691" 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-08-10T02:07:48.556364" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.557189" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.556883" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.557715" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.557399" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.558225" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff31e40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.557909" 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-08-10T02:07:48.551653" elapsed="0.006669"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.558869" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:48.558487" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.559290" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:48.559049" 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-08-10T02:07:48.567245" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.566948" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.573131" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.573647" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:48.573749" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.567415" elapsed="0.006359"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.574219" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.573967" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.576840" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.574425" elapsed="0.002469"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:48.579413" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:48.576963" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.576944" elapsed="0.002594"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:48.579735" 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-08-10T02:07:48.580050" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.579862" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:48.579838" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.580198" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:48.582573" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:48.582636" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:48.566636" elapsed="0.016032"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.585554" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.583454" elapsed="0.002146"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.583428" elapsed="0.002194"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.586169" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.585764" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.586727" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.586374" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.586805" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:48.586981" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:48.582965" elapsed="0.004041"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.587160" 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-08-10T02:07:48.566066" elapsed="0.021560"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.595456" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.595142" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.600422" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.600573" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:48.600672" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.595610" elapsed="0.005088"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.601107" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.600856" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.604464" 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-08-10T02:07:48.601386" elapsed="0.003199"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.607202" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.604689" elapsed="0.002582"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.604662" elapsed="0.002640"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.610622" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:48.610668" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:48.607520" elapsed="0.003171"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:48.612484" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.610768" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.610749" elapsed="0.001815"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:48.612598" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:48.612790" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:48.612833" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:48.594768" elapsed="0.018087"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.614993" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.613413" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.613395" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.615620" 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-08-10T02:07:48.615205" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.616153" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.615807" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.616228" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:48.616450" 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-08-10T02:07:48.613067" elapsed="0.003413"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.616637" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:48.594140" elapsed="0.022941"/>
</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-08-10T02:07:48.548414" elapsed="0.068723"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:48.541163" elapsed="0.076083"/>
</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-08-10T02:07:48.628376" 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-08-10T02:07:48.628507" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:48.628208" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:48.629078" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:48.628688" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.629553" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:48.629258" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.629996" 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-08-10T02:07:48.629730" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.630452" 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-08-10T02:07:48.630169" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.631383" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:48.630626" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.631902" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.631571" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.632508" 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-08-10T02:07:48.632142" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.633029" 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-08-10T02:07:48.632706" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.633552" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.633220" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.634059" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.633745" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.634590" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.634251" 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-08-10T02:07:48.627881" elapsed="0.006806"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.635221" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:48.634834" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.635661" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:48.635418" 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-08-10T02:07:48.643421" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.643106" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.649044" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.649553" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:48.649656" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.643575" elapsed="0.006107"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.650103" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.649842" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.652679" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.650295" elapsed="0.002436"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:48.655138" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:48.652799" elapsed="0.002431"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.652780" elapsed="0.002483"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:48.655481" 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-08-10T02:07:48.655846" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.655656" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:48.655630" elapsed="0.000320"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.655995" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:48.658316" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:48.658401" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:48.642795" elapsed="0.015639"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.663539" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.659190" elapsed="0.004396"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.659165" elapsed="0.004443"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.664153" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.663756" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.664722" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.664373" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.664797" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:48.664973" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:48.658732" elapsed="0.006267"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.665154" 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-08-10T02:07:48.642226" elapsed="0.023393"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.673462" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.673141" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.678708" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.679012" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:48.679123" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.673617" elapsed="0.005533"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.679590" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.679312" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.681794" 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-08-10T02:07:48.679778" elapsed="0.002066"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.683661" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.681912" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.681894" elapsed="0.001838"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.686859" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:48.686924" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:48.683868" 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-08-10T02:07:48.689537" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.687062" elapsed="0.002552"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.687036" elapsed="0.002611"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:48.689693" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:48.689960" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:48.690020" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:48.672676" elapsed="0.017374"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.693230" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.690905" elapsed="0.002393"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.690880" elapsed="0.002446"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.693930" 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-08-10T02:07:48.693510" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.694488" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.694119" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.694565" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:48.694745" 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-08-10T02:07:48.690443" elapsed="0.004328"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.694926" 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-08-10T02:07:48.672026" elapsed="0.023377"/>
</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-08-10T02:07:48.624644" elapsed="0.070818"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:48.617532" elapsed="0.078049"/>
</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-08-10T02:07:48.707071" 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-08-10T02:07:48.707226" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:48.706932" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:48.707831" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:48.707420" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.708289" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:48.708008" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.708789" 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-08-10T02:07:48.708521" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.709229" 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-08-10T02:07:48.708963" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.710237" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:48.709419" elapsed="0.000849"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.710777" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.710445" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.711288" 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-08-10T02:07:48.710969" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.711819" 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-08-10T02:07:48.711496" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.712322" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.712011" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.712865" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.712546" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.713447" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.713108" 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-08-10T02:07:48.706604" elapsed="0.006941"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.714070" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:48.713692" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.714508" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:48.714248" 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-08-10T02:07:48.722274" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.721974" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.728418" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.728971" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:48.729073" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.722446" elapsed="0.006652"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.729737" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.729381" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.733248" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.729996" elapsed="0.003324"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:48.735866" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:07:48.733442" elapsed="0.002514"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.733415" 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-08-10T02:07:48.736187" 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-08-10T02:07:48.736578" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.736313" elapsed="0.000342"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:48.736290" elapsed="0.000397"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.736731" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:48.738725" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:48.738769" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:48.721659" 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-08-10T02:07:48.740918" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.739326" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.739309" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.741580" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.741130" elapsed="0.000477"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.742113" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.741767" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.742188" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:48.742385" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:48.739000" elapsed="0.003411"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.742564" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:48.721080" elapsed="0.021927"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.750749" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.750454" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.756249" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.756438" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:48.756549" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.750904" elapsed="0.005670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.756984" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.756733" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.759186" 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-08-10T02:07:48.757173" elapsed="0.002063"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.761086" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.759303" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.759285" elapsed="0.001880"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.764900" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:48.764964" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:48.761386" elapsed="0.003609"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:48.767493" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.765101" elapsed="0.002471"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.765075" elapsed="0.002530"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:48.767651" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:48.767916" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:48.767976" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:48.750060" elapsed="0.017947"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.770511" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.768844" elapsed="0.001712"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.768819" elapsed="0.001758"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.771116" 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-08-10T02:07:48.770720" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.771670" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.771305" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.771778" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:48.771959" 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-08-10T02:07:48.768306" 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-08-10T02:07:48.772138" 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-08-10T02:07:48.749445" elapsed="0.023174"/>
</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-08-10T02:07:48.703348" elapsed="0.069326"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:48.696081" elapsed="0.076701"/>
</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-08-10T02:07:48.784097" 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-08-10T02:07:48.784224" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:48.783962" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:48.784870" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dbc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:48.784456" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.785322" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:48.785049" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.785791" 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-08-10T02:07:48.785524" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.786231" 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-08-10T02:07:48.785965" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.787231" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:48.786424" elapsed="0.000838"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.787764" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.787434" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.788271" 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-08-10T02:07:48.787956" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.788811" 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-08-10T02:07:48.788489" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.789311" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.789000" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.789835" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.789522" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.790360" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dbc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.790026" 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-08-10T02:07:48.783636" elapsed="0.006820"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.790976" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:48.790601" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.791411" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:48.791153" 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-08-10T02:07:48.799149" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.798855" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.804934" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.805440" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:48.805542" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.799303" elapsed="0.006264"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.805975" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.805725" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.808529" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.806164" 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-08-10T02:07:48.810887" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:48.808649" elapsed="0.002329"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.808631" elapsed="0.002380"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:48.811205" elapsed="0.000029"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:48.811555" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.811326" elapsed="0.000301"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:48.811304" elapsed="0.000354"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.811702" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:48.814015" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:48.814077" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:48.798538" elapsed="0.015570"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.817150" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.814887" elapsed="0.002341"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.814863" elapsed="0.002398"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.817838" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.817443" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.818396" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.818022" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.818471" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:48.818647" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:48.814430" elapsed="0.004242"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.818825" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:48.797970" elapsed="0.021298"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.827138" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.826847" elapsed="0.000318"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.832196" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.832402" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:48.832559" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.827290" elapsed="0.005297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.832994" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.832744" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.836010" 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-08-10T02:07:48.833206" elapsed="0.002874"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.838657" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.836173" elapsed="0.002557"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.836147" elapsed="0.002614"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.842658" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:48.842722" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:48.838970" elapsed="0.003784"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:48.845249" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.842864" elapsed="0.002440"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.842837" elapsed="0.002490"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:48.845378" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:48.845574" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:48.845617" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:48.826475" elapsed="0.019164"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.847816" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.846195" elapsed="0.001667"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.846177" elapsed="0.001706"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.848462" 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-08-10T02:07:48.848032" elapsed="0.000494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.849044" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.848693" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.849118" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:48.849292" 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-08-10T02:07:48.845862" elapsed="0.003455"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.849493" 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-08-10T02:07:48.825850" elapsed="0.024091"/>
</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-08-10T02:07:48.780416" elapsed="0.069583"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:48.773106" elapsed="0.077011"/>
</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-08-10T02:07:48.863382" 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-08-10T02:07:48.863528" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:48.863227" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:48.864108" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:48.863708" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.864674" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:48.864284" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.865121" 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-08-10T02:07:48.864852" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.865582" 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-08-10T02:07:48.865295" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.866401" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:48.865754" elapsed="0.000677"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.866913" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.866584" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.867438" 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-08-10T02:07:48.867105" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.867951" 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-08-10T02:07:48.867628" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.868464" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.868139" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.869003" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.868687" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.869534" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.869196" 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-08-10T02:07:48.862895" elapsed="0.006735"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.870151" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:48.869775" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.870583" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:48.870327" 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-08-10T02:07:48.878275" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.877978" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.884885" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.885466" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:48.885644" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.878445" elapsed="0.007235"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.886254" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.885900" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.894146" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.886538" elapsed="0.007691"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:48.896839" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:07:48.894324" elapsed="0.002608"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.894298" 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-08-10T02:07:48.897162" 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-08-10T02:07:48.897504" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.897301" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:48.897274" elapsed="0.000306"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.897612" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:07:48.899382" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:48.899429" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:48.877667" elapsed="0.021785"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.901656" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.899996" elapsed="0.001708"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.899978" elapsed="0.001748"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.902283" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.901876" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.902836" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.902490" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.902911" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:48.903090" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:48.899663" 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-08-10T02:07:48.903271" 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-08-10T02:07:48.877099" elapsed="0.026644"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.911558" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.911241" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.916979" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.917151" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:48.917248" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.911713" elapsed="0.005560"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.917707" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.917456" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.919914" 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-08-10T02:07:48.917892" elapsed="0.002132"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.922196" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.920093" elapsed="0.002171"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.920074" elapsed="0.002220"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.926145" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:48.926208" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:48.922507" elapsed="0.003732"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:48.928790" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.926367" elapsed="0.002501"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.926319" elapsed="0.002582"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:48.928948" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:48.929201" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:48.929245" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:48.910863" elapsed="0.018404"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.931583" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.929829" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.929812" elapsed="0.001838"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.932193" 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-08-10T02:07:48.931795" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.932761" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.932399" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.932836" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:48.933012" 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-08-10T02:07:48.929500" elapsed="0.003537"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.933189" 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-08-10T02:07:48.910231" elapsed="0.023419"/>
</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-08-10T02:07:48.857745" elapsed="0.075961"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:48.850526" elapsed="0.083300"/>
</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-08-10T02:07:48.945164" 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-08-10T02:07:48.945318" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:48.945023" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:48.945937" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0da430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:48.945516" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.946411" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:48.946115" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.946857" 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-08-10T02:07:48.946589" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:48.947297" 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-08-10T02:07:48.947030" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:48.948193" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:48.947495" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.948736" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.948395" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.949284" 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-08-10T02:07:48.948965" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.949830" 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-08-10T02:07:48.949505" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.950345" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.950021" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.950856" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.950541" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.951388" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0da430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:48.951052" 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-08-10T02:07:48.944692" elapsed="0.006792"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.952008" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:48.951630" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.952450" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:48.952190" 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-08-10T02:07:48.960326" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.960031" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.965810" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.966323" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:48.966465" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.960498" elapsed="0.005993"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.966900" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.966651" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.969456" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.967086" 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-08-10T02:07:48.971947" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:07:48.969576" elapsed="0.002504"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.969557" elapsed="0.002561"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:48.972314" elapsed="0.000054"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:48.972683" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:48.972466" elapsed="0.000289"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:48.972442" elapsed="0.000345"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.972831" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:48.975080" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:48.975143" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:48.959718" elapsed="0.015457"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.977936" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.975962" elapsed="0.002020"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.975938" elapsed="0.002066"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.978566" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.978153" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.979098" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:48.978751" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:48.979172" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:48.979415" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:48.975504" elapsed="0.003941"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:48.979604" 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-08-10T02:07:48.959146" elapsed="0.020905"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.987881" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:48.987587" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:48.993069" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:48.993227" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:48.993324" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:48.988034" elapsed="0.005337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.993781" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:48.993531" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:48.996134" 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-08-10T02:07:48.993964" elapsed="0.002220"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:48.998413" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:48.996252" elapsed="0.002229"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:48.996233" elapsed="0.002278"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.002414" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.002480" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:48.998703" elapsed="0.003809"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.005028" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.002618" elapsed="0.002487"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.002592" elapsed="0.002547"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.005219" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:49.005431" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.005474" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:48.987189" elapsed="0.018307"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.007632" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.006040" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.006023" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.008243" 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-08-10T02:07:49.007845" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.008859" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.008449" elapsed="0.000436"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.008935" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.009111" 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-08-10T02:07:49.005710" elapsed="0.003427"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.009291" 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-08-10T02:07:48.986576" elapsed="0.023185"/>
</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-08-10T02:07:48.941403" elapsed="0.068415"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:48.934272" elapsed="0.075659"/>
</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-08-10T02:07:49.020974" 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-08-10T02:07:49.021110" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:49.020836" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.021730" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.021287" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.022183" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.021907" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.022645" 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-08-10T02:07:49.022376" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.023085" 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-08-10T02:07:49.022819" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.024188" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:49.023257" elapsed="0.000962"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.024765" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.024393" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.025282" 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-08-10T02:07:49.024963" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.025815" 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-08-10T02:07:49.025492" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.026310" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.026004" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.026836" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.026522" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.027406" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.027069" 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-08-10T02:07:49.020484" elapsed="0.007019"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.028028" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:49.027649" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.028462" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:49.028204" 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-08-10T02:07:49.036151" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.035858" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.041502" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.042002" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.042103" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.036310" elapsed="0.005819"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.042562" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.042289" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.045153" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.042749" 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-08-10T02:07:49.047847" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.045380" elapsed="0.002567"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.045310" elapsed="0.002671"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.048195" 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-08-10T02:07:49.048537" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.048321" elapsed="0.000299"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.048298" elapsed="0.000356"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.048699" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:49.050987" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.051050" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.035546" elapsed="0.015535"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.053918" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.051958" elapsed="0.002005"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.051933" elapsed="0.002052"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.054569" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.054136" elapsed="0.000460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.055104" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.054756" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.055180" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:07:49.055378" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.051482" elapsed="0.003923"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.055561" 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-08-10T02:07:49.034981" elapsed="0.021055"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.063838" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.063538" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.070595" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.070758" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.070870" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.063992" elapsed="0.006904"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.071394" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.071057" elapsed="0.000402"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.074526" 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-08-10T02:07:49.071657" elapsed="0.002940"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.077171" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.074692" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.074666" elapsed="0.002602"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.081255" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.081300" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.077483" elapsed="0.003840"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.083165" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.081418" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.081399" elapsed="0.001847"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.083280" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.083512" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.083559" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.063143" elapsed="0.020439"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.085762" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.084141" elapsed="0.001667"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.084122" elapsed="0.001707"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.086392" 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-08-10T02:07:49.085975" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.086987" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.086631" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.087063" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:49.087241" 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-08-10T02:07:49.083800" 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-08-10T02:07:49.087450" 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-08-10T02:07:49.062518" elapsed="0.025384"/>
</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-08-10T02:07:49.017256" elapsed="0.070704"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.010206" elapsed="0.077877"/>
</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-08-10T02:07:49.099493" 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-08-10T02:07:49.099640" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:49.099350" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.100252" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff26b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.099819" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.100757" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.100449" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.101211" 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-08-10T02:07:49.100940" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.101710" 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-08-10T02:07:49.101435" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.102836" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:49.101884" elapsed="0.000984"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.103376" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.103024" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.103889" 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-08-10T02:07:49.103571" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.104422" 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-08-10T02:07:49.104081" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.104957" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.104614" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.105484" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.105150" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.105996" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff26b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.105679" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:49.099007" elapsed="0.007084"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.106642" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:49.106243" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.107103" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:49.106859" 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-08-10T02:07:49.115065" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.114756" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.120586" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.121267" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.121444" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.115222" elapsed="0.006259"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.122056" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.121705" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.125704" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.122320" 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-08-10T02:07:49.128369" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.125878" elapsed="0.002594"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.125849" elapsed="0.002657"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.128789" 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-08-10T02:07:49.129133" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.128935" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.128911" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.129253" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:07:49.130883" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.130928" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.114435" elapsed="0.016515"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.133275" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.131520" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.131502" elapsed="0.001866"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.133917" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.133517" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.134468" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.134102" elapsed="0.000437"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.134591" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:49.134770" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.131166" elapsed="0.003629"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.134948" 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-08-10T02:07:49.113837" elapsed="0.021583"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.143190" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.142895" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.149133" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.149324" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.149534" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.143367" elapsed="0.006203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.150142" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.149793" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.153234" 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-08-10T02:07:49.150427" elapsed="0.002878"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.155866" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.153435" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.153409" elapsed="0.002554"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.160006" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.160070" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.156154" elapsed="0.003947"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.162255" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.160206" elapsed="0.002105"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.160181" elapsed="0.002169"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.162386" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.162579" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.162622" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.142524" elapsed="0.020120"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.164803" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.163185" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.163167" elapsed="0.001704"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.165435" 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-08-10T02:07:49.165019" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.165972" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.165623" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.166049" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.166225" 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-08-10T02:07:49.162857" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.166464" 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-08-10T02:07:49.141885" elapsed="0.025033"/>
</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-08-10T02:07:49.095730" elapsed="0.071245"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.088511" elapsed="0.078588"/>
</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-08-10T02:07:49.178714" 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-08-10T02:07:49.178887" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:49.178543" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.179528" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30ef0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.179075" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.179988" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.179707" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.180449" 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-08-10T02:07:49.180163" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.180926" 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-08-10T02:07:49.180623" elapsed="0.000329"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.181852" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:49.181101" elapsed="0.000781"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.182382" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.182038" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.182892" 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-08-10T02:07:49.182578" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.183417" 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-08-10T02:07:49.183081" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.183918" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.183607" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.184447" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.184115" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.184992" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30ef0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.184643" 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-08-10T02:07:49.178197" elapsed="0.006891"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.185643" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:49.185242" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.186065" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:49.185825" 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-08-10T02:07:49.193989" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.193685" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.200124" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.200645" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.200799" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.194147" elapsed="0.006679"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.201285" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.200988" elapsed="0.000386"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.204857" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.201577" elapsed="0.003353"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.207506" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.205027" elapsed="0.002571"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.205001" elapsed="0.002630"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.207828" 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-08-10T02:07:49.208138" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.207952" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.207929" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.208284" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:49.210210" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.210255" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.193230" elapsed="0.017047"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.212432" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.210835" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.210817" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.213051" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.212643" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.213619" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.213242" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.213693" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.213868" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.210506" elapsed="0.003387"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.214047" 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-08-10T02:07:49.192651" elapsed="0.021859"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.222306" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.222013" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.228370" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.228566" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.228666" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.222478" elapsed="0.006214"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.229145" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.228893" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.232179" 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-08-10T02:07:49.229375" elapsed="0.002874"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.234837" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.232364" elapsed="0.002541"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.232317" elapsed="0.002620"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.238497" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.238542" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.235130" elapsed="0.003435"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.240534" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.238641" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.238622" elapsed="0.001992"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.240648" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:49.240858" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.240901" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.221639" elapsed="0.019284"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.243057" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.241480" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.241462" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.243678" 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-08-10T02:07:49.243268" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.244208" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.243864" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.244283" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:49.244479" 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-08-10T02:07:49.241134" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.244660" 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-08-10T02:07:49.221013" elapsed="0.024128"/>
</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-08-10T02:07:49.174929" elapsed="0.070266"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.167556" elapsed="0.077754"/>
</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-08-10T02:07:49.256241" 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-08-10T02:07:49.256413" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:49.256089" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.259933" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.256604" elapsed="0.003359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.260485" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.260182" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.260972" 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-08-10T02:07:49.260664" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.261438" 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-08-10T02:07:49.261150" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.262380" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:49.261612" elapsed="0.000799"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.262904" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.262570" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.263432" 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-08-10T02:07:49.263097" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.263944" 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-08-10T02:07:49.263623" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.264457" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.264134" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.264978" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.264650" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.265503" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.265171" 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-08-10T02:07:49.255755" elapsed="0.009845"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.266131" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:49.265746" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.266576" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:49.266310" elapsed="0.000330"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.276089" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.275787" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.282439" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.283050" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.283211" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.276243" elapsed="0.006995"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.283674" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.283419" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.286733" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.283859" elapsed="0.002948"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.289417" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.286914" elapsed="0.002613"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.286883" 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-08-10T02:07:49.289775" 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-08-10T02:07:49.290103" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.289907" elapsed="0.000270"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.289883" elapsed="0.000327"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.290258" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:49.292690" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.292756" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.275471" elapsed="0.017356"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.295076" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.293508" elapsed="0.001614"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.293489" elapsed="0.001655"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.295711" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.295291" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.296248" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.295896" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.296325" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:07:49.296522" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.293150" 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-08-10T02:07:49.296704" elapsed="0.000411"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:49.274884" elapsed="0.022294"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.305118" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.304818" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.310588" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.310813" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.310955" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.305272" elapsed="0.005721"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.311630" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.311230" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.315241" 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-08-10T02:07:49.311907" elapsed="0.003489"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.318224" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.315500" elapsed="0.002797"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.315472" elapsed="0.002878"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.322639" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.322707" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.318563" elapsed="0.004178"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.325377" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.322857" elapsed="0.002576"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.322829" elapsed="0.002628"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.325492" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.325688" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.325732" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.304430" elapsed="0.021324"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.327911" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.326309" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.326291" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.328551" 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-08-10T02:07:49.328125" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.329107" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.328740" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.329183" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:49.329379" 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-08-10T02:07:49.325977" 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-08-10T02:07:49.329564" 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-08-10T02:07:49.303787" elapsed="0.026232"/>
</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-08-10T02:07:49.252458" elapsed="0.077619"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.245498" elapsed="0.084714"/>
</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-08-10T02:07:49.341886" 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-08-10T02:07:49.342042" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:49.341742" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.342667" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec2c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.342220" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.343136" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.342855" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.343597" 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-08-10T02:07:49.343312" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.344036" 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-08-10T02:07:49.343771" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.345158" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:49.344209" elapsed="0.000980"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.345705" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.345367" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.346272" 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-08-10T02:07:49.345949" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.346812" 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-08-10T02:07:49.346484" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.347313" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.347003" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.347844" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.347527" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.348373" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec2c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.348038" 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-08-10T02:07:49.341413" elapsed="0.007058"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.349048" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:49.348619" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.349496" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:49.349233" 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-08-10T02:07:49.357269" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.356968" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.362774" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.363283" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.363412" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.357443" elapsed="0.005995"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.363850" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.363599" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.366954" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.364036" elapsed="0.002991"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.369666" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.367167" elapsed="0.002591"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.367139" elapsed="0.002654"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.369993" 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-08-10T02:07:49.370306" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.370119" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.370096" elapsed="0.000339"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.370481" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:07:49.372748" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.372811" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.356618" elapsed="0.016262"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.375108" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.373533" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.373515" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.375738" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.375325" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.376271" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.375925" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.376362" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:49.376543" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.373180" elapsed="0.003388"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.376724" 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-08-10T02:07:49.356044" 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-08-10T02:07:49.385171" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.384860" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.391842" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.392053" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.392205" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.385328" elapsed="0.006912"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.392875" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.392498" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.395948" 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-08-10T02:07:49.393138" elapsed="0.002880"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.398608" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.396112" elapsed="0.002565"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.396087" elapsed="0.002620"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.402528" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.402594" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.398900" 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-08-10T02:07:49.405224" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.402730" elapsed="0.002588"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.402705" elapsed="0.002657"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.405398" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.405593" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.405637" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.384474" elapsed="0.021185"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.407800" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.406209" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.406189" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.408425" 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-08-10T02:07:49.408013" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.408975" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.408614" elapsed="0.000386"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.409050" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.409233" 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-08-10T02:07:49.405874" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.409430" 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-08-10T02:07:49.383838" elapsed="0.026037"/>
</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-08-10T02:07:49.338145" elapsed="0.071786"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.330769" elapsed="0.079273"/>
</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-08-10T02:07:49.421569" 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-08-10T02:07:49.421698" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:49.421432" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.422274" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2980&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.421875" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.422811" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.422533" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.423255" 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-08-10T02:07:49.422990" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.423716" 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-08-10T02:07:49.423449" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.424562" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:49.423889" elapsed="0.000703"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.425089" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.424745" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.425617" 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-08-10T02:07:49.425280" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.426128" 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-08-10T02:07:49.425806" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.426646" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.426317" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.427196" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.426877" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.427727" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2980&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.427407" 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-08-10T02:07:49.421082" elapsed="0.006742"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.428372" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:49.427972" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.428792" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:49.428552" 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-08-10T02:07:49.436547" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.436231" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.441536" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.442029" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.442138" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.436704" elapsed="0.005460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.442598" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.442346" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.445438" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.442787" elapsed="0.002726"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.448048" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.445612" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.445585" elapsed="0.002587"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.448389" 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-08-10T02:07:49.448702" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.448516" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.448493" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.448849" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:49.451127" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.451189" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.435920" elapsed="0.015300"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.453991" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.452069" elapsed="0.001967"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.452045" elapsed="0.002013"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.454615" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.454203" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.455146" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.454799" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.455220" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:49.455417" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.451607" elapsed="0.003836"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.455597" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:49.435369" elapsed="0.020673"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.463893" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.463583" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.468950" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.469120" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.469248" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.464050" elapsed="0.005233"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.469887" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.469538" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.472987" 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-08-10T02:07:49.470144" elapsed="0.002915"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.475601" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.473157" elapsed="0.002512"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.473130" elapsed="0.002570"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.478928" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.478974" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.475892" elapsed="0.003105"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.480984" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.479071" elapsed="0.001970"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.479053" elapsed="0.002012"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.481099" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:49.481293" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.481353" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.463180" elapsed="0.018197"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.483533" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.481916" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.481899" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.484198" 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-08-10T02:07:49.483746" elapsed="0.000479"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.484753" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.484402" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.484829" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.496023" 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-08-10T02:07:49.481590" elapsed="0.014461"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.496212" 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-08-10T02:07:49.462533" elapsed="0.034156"/>
</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-08-10T02:07:49.417642" elapsed="0.079105"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.410435" elapsed="0.086435"/>
</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-08-10T02:07:49.507952" 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-08-10T02:07:49.508128" 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-08-10T02:07:49.507811" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.508847" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0810&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.508310" elapsed="0.000565"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.509404" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.509078" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.509863" 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-08-10T02:07:49.509594" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.510304" 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-08-10T02:07:49.510037" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.511184" 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-08-10T02:07:49.510498" elapsed="0.000717"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.511722" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.511388" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.512231" 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-08-10T02:07:49.511914" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.512760" 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-08-10T02:07:49.512438" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.513272" 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-08-10T02:07:49.512963" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.513796" 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-08-10T02:07:49.513481" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.514304" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0810&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.513988" 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-08-10T02:07:49.507483" elapsed="0.006934"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.514946" 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-08-10T02:07:49.514565" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.515495" 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-08-10T02:07:49.515170" 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-08-10T02:07:49.523722" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.523422" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.529261" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.530040" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.530188" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.523878" elapsed="0.006346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.530839" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.530481" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.534418" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.531100" elapsed="0.003390"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.537112" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.534595" elapsed="0.002617"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.534565" elapsed="0.002681"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.537448" 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-08-10T02:07:49.537671" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.537537" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.537521" elapsed="0.000223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.537776" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:07:49.539407" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.539452" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.523084" elapsed="0.016391"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.541632" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.540028" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.540011" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.542241" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.541844" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.542792" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.542444" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.542908" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:49.543090" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.539695" elapsed="0.003421"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.543272" 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-08-10T02:07:49.522516" elapsed="0.021231"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.551562" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.551211" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.557728" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.557881" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.557977" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.551718" elapsed="0.006284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.558436" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.558159" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.560790" 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-08-10T02:07:49.558620" elapsed="0.002221"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.563219" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.560908" elapsed="0.002380"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.560890" elapsed="0.002428"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.567146" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.567225" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.563539" 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-08-10T02:07:49.569696" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.567415" elapsed="0.002337"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.567388" elapsed="0.002387"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.569808" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:49.570000" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.570043" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.550825" elapsed="0.019240"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.572211" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.570632" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.570615" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.572829" 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-08-10T02:07:49.572435" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.573407" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.573038" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.573483" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.573658" 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-08-10T02:07:49.570278" elapsed="0.003404"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.573838" 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-08-10T02:07:49.550196" elapsed="0.024151"/>
</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-08-10T02:07:49.504231" elapsed="0.070177"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.497242" elapsed="0.077288"/>
</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-08-10T02:07:49.585416" 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-08-10T02:07:49.585558" 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-08-10T02:07:49.585260" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.586140" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee50a750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.585737" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.586616" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.586319" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.587061" 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-08-10T02:07:49.586793" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.587519" 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-08-10T02:07:49.587234" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.588529" 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-08-10T02:07:49.587692" elapsed="0.000868"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.589062" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.588716" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.589596" 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-08-10T02:07:49.589257" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.590110" 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-08-10T02:07:49.589788" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.590627" 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-08-10T02:07:49.590299" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.591136" 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-08-10T02:07:49.590821" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.591665" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee50a750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.591346" 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-08-10T02:07:49.584909" elapsed="0.006852"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.592284" 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-08-10T02:07:49.591906" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.592721" 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-08-10T02:07:49.592482" 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-08-10T02:07:49.600517" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.600202" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.606693" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.607182" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.607286" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.600670" elapsed="0.006644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.607746" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.607497" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.610769" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.607930" elapsed="0.002912"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.613405" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.610937" elapsed="0.002560"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.610911" elapsed="0.002619"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.613724" 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-08-10T02:07:49.614115" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.613848" elapsed="0.000342"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.613825" elapsed="0.000397"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.614266" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:49.616587" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.616650" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.599890" elapsed="0.016791"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.619296" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.617536" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.617511" elapsed="0.001869"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.619919" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.619525" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.620469" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.620103" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.620544" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.620719" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.616974" elapsed="0.003770"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.620898" 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-08-10T02:07:49.599323" elapsed="0.022052"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.629124" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.628815" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.635172" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.635506" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.635645" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.629279" elapsed="0.006402"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.636249" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.635899" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.639668" 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-08-10T02:07:49.636535" elapsed="0.003204"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.642450" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.639834" elapsed="0.002685"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.639809" elapsed="0.002741"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.646353" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.646408" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.642741" elapsed="0.003691"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.648228" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.646508" elapsed="0.001775"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.646489" elapsed="0.001817"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.648355" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.648549" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.648592" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.628439" elapsed="0.020175"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.650753" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.649166" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.649149" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.651374" 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-08-10T02:07:49.650963" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.651909" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.651562" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.651983" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.652159" 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-08-10T02:07:49.648826" elapsed="0.003358"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.652355" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:49.627813" elapsed="0.024988"/>
</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-08-10T02:07:49.581689" elapsed="0.071168"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.574713" elapsed="0.078252"/>
</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-08-10T02:07:49.663796" 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-08-10T02:07:49.663923" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:49.663662" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.664502" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36acf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.664102" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.664992" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.664716" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.665471" 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-08-10T02:07:49.665182" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.665915" 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-08-10T02:07:49.665647" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.666854" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:49.666086" elapsed="0.000798"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.667387" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.667039" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.667902" 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-08-10T02:07:49.667582" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.668434" 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-08-10T02:07:49.668093" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.668940" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:49.668627" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.669505" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:49.669168" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.670017" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36acf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.669701" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:49.663322" elapsed="0.006791"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.670664" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:49.670260" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.671083" level="INFO">&lt;?xml version="1.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-08-10T02:07:49.670843" 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-08-10T02:07:49.678871" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.678574" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.684667" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.685299" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.685437" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.679025" elapsed="0.006438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.685925" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.685672" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.689399" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.686111" elapsed="0.003362"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.691992" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.689573" elapsed="0.002513"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.689545" elapsed="0.002575"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.692316" 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-08-10T02:07:49.692653" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.692467" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.692443" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.692799" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:49.694879" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.694926" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.678243" elapsed="0.016705"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.697196" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.695523" elapsed="0.001723"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.695505" elapsed="0.001763"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.697828" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.697430" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.698382" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.698014" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.698458" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.698635" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.695164" 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-08-10T02:07:49.698814" 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-08-10T02:07:49.677680" elapsed="0.021602"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.707068" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.706773" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.713571" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.713853" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.714033" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.707221" elapsed="0.006860"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.714648" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.714393" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.718743" 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-08-10T02:07:49.714831" elapsed="0.004044"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.721530" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.718972" elapsed="0.002627"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.718947" elapsed="0.002683"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.725751" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.725815" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.721822" elapsed="0.004025"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.727760" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.725953" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.725927" elapsed="0.001913"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.727873" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:49.728062" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.728106" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.706399" elapsed="0.021729"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.730263" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.728686" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.728668" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.730888" 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-08-10T02:07:49.730493" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.731448" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.731076" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.731523" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.731700" 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-08-10T02:07:49.728356" elapsed="0.003369"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.731884" 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-08-10T02:07:49.705765" elapsed="0.026633"/>
</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-08-10T02:07:49.660068" elapsed="0.072388"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.653228" elapsed="0.079351"/>
</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-08-10T02:07:49.743584" 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-08-10T02:07:49.743742" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:49.743440" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.744322" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.743922" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.744799" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.744520" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.745257" 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-08-10T02:07:49.744975" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.745717" 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-08-10T02:07:49.745448" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.746466" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:49.745890" elapsed="0.000606"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.785691" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.746650" elapsed="0.039110"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.786482" 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-08-10T02:07:49.786066" elapsed="0.000460"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.787008" 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-08-10T02:07:49.786680" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.787543" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:49.787198" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.788053" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:49.787737" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.788622" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.788246" 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-08-10T02:07:49.743096" elapsed="0.045629"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.789326" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:49.788876" elapsed="0.000501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.789780" level="INFO">&lt;?xml version="1.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-08-10T02:07:49.789529" 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-08-10T02:07:49.797591" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.797255" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.802909" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.803499" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.803616" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.797749" elapsed="0.005893"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.804053" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.803801" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.806810" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.804244" elapsed="0.002637"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.809475" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.806982" elapsed="0.002593"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.806953" elapsed="0.002657"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.809806" 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-08-10T02:07:49.810115" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.809929" elapsed="0.000303"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.809907" elapsed="0.000360"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.810312" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:07:49.812604" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.812667" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.796907" elapsed="0.015791"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.815280" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.813512" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.813487" elapsed="0.001877"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.815922" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.815517" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.816495" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.816115" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.816577" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:49.816757" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.812993" elapsed="0.003790"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.816937" elapsed="0.000469"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:49.796312" elapsed="0.021158"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.825392" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.825062" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.831982" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.832193" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.832375" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.825548" elapsed="0.006866"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.832983" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.832634" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.836137" 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-08-10T02:07:49.833300" elapsed="0.002910"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.838796" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.836308" elapsed="0.002556"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.836282" elapsed="0.002613"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.842550" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.842616" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.839088" elapsed="0.003559"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.845150" elapsed="0.000072"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.842752" elapsed="0.002518"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.842727" elapsed="0.002577"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.845371" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:07:49.845641" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.845702" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.824686" elapsed="0.021046"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.848130" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.846535" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.846517" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.848760" 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-08-10T02:07:49.848363" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.849357" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.848947" elapsed="0.000438"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.849436" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:49.849620" 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-08-10T02:07:49.846081" 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-08-10T02:07:49.849801" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:49.824049" elapsed="0.026199"/>
</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-08-10T02:07:49.739815" elapsed="0.110489"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.732888" elapsed="0.117563"/>
</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-08-10T02:07:49.861575" 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-08-10T02:07:49.861729" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:49.861431" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.862306" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.861910" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.862787" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.862507" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.863231" 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-08-10T02:07:49.862965" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.863696" 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-08-10T02:07:49.863424" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.864448" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:49.863872" elapsed="0.000606"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.864962" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.864634" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.865540" 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-08-10T02:07:49.865157" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.866062" 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-08-10T02:07:49.865738" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.866585" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:49.866255" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.867094" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:49.866779" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.867620" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.867286" 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-08-10T02:07:49.861051" elapsed="0.006702"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.868283" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:49.867902" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.868721" level="INFO">&lt;?xml version="1.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-08-10T02:07:49.868482" 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-08-10T02:07:49.876471" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.876158" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.882633" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.883147" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.883264" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.876625" elapsed="0.006666"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.883738" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.883479" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.886592" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.883925" elapsed="0.002740"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.889243" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.886764" elapsed="0.002592"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.886737" elapsed="0.002656"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.889589" 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-08-10T02:07:49.889900" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.889715" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.889693" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.890046" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:49.892322" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.892405" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.875846" elapsed="0.016592"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.895099" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.893240" elapsed="0.001903"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.893180" elapsed="0.001986"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.895732" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.895319" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.896270" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.895919" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.896403" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:49.896586" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.892736" elapsed="0.003875"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.896765" 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-08-10T02:07:49.875278" 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-08-10T02:07:49.905024" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.904730" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.910248" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.910423" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.910521" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.905176" elapsed="0.005370"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.910952" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.910705" elapsed="0.000291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.913146" 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-08-10T02:07:49.911135" elapsed="0.002061"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.915527" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.913367" elapsed="0.002228"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.913325" elapsed="0.002301"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.919253" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:49.919317" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.915817" elapsed="0.003554"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:49.922097" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.919478" elapsed="0.002707"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.919453" elapsed="0.002773"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:49.922281" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:07:49.922508" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:49.922551" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.904354" elapsed="0.018219"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.924699" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.923107" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.923090" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.925319" 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-08-10T02:07:49.924910" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.925874" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.925523" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.925949" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.926127" 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-08-10T02:07:49.922783" elapsed="0.003369"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:49.926366" 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-08-10T02:07:49.903730" elapsed="0.023087"/>
</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-08-10T02:07:49.857638" elapsed="0.069234"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.850769" elapsed="0.076220"/>
</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-08-10T02:07:49.937967" 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-08-10T02:07:49.938103" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:49.937827" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:49.938711" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:49.938281" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.939164" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:49.938889" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.939625" 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-08-10T02:07:49.939356" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:49.940076" 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-08-10T02:07:49.939800" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:49.941013" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:49.940262" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.941575" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.941201" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.942089" 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-08-10T02:07:49.941771" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.942618" 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-08-10T02:07:49.942278" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.943113" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:49.942806" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.943638" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:49.943306" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.944145" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:49.943831" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:49.937499" elapsed="0.006739"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.944794" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:49.944411" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.945210" level="INFO">&lt;?xml version="1.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-08-10T02:07:49.944973" 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-08-10T02:07:49.953292" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.952967" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.959061" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.959594" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:49.959695" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.953472" elapsed="0.006248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.960125" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.959878" elapsed="0.000291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.962925" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.960309" elapsed="0.002688"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:49.965586" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:07:49.963094" elapsed="0.002587"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.963068" elapsed="0.002647"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:49.965912" 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-08-10T02:07:49.966244" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:49.966037" elapsed="0.000322"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:49.966014" elapsed="0.000385"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.966445" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:49.968702" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:49.968764" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:49.952653" elapsed="0.016142"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.971350" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.969604" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.969579" elapsed="0.001840"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.971956" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.971564" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.972510" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:49.972140" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:49.972585" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:49.972760" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:49.969086" 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-08-10T02:07:49.972938" 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-08-10T02:07:49.952075" elapsed="0.021339"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.981108" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:49.980815" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:49.987973" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:49.988158" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:49.988296" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:49.981296" elapsed="0.007065"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.988929" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:49.988583" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:49.992302" 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-08-10T02:07:49.989188" elapsed="0.003209"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:49.999068" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:49.992494" elapsed="0.006625"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:49.992468" elapsed="0.006674"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.002055" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.002101" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:49.999298" elapsed="0.002826"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.003915" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.002202" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.002183" elapsed="0.001812"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.004029" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.004221" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.004265" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:49.980441" elapsed="0.023847"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.006464" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.004844" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.004827" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.007070" 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-08-10T02:07:50.006675" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.007623" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.007256" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.007698" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.007873" 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-08-10T02:07:50.004518" elapsed="0.003380"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.008052" 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-08-10T02:07:49.979817" elapsed="0.028698"/>
</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-08-10T02:07:49.934221" elapsed="0.074349"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:49.927256" elapsed="0.081428"/>
</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-08-10T02:07:50.019670" 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-08-10T02:07:50.019820" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.019529" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.020430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.020000" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.020926" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.020646" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.021422" 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-08-10T02:07:50.021105" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.021867" 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-08-10T02:07:50.021598" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.022916" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.022043" elapsed="0.000904"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.023449" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.023104" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.023963" 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-08-10T02:07:50.023644" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.024496" 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-08-10T02:07:50.024155" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.024997" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.024687" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.025544" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.025190" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.026054" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.025738" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:50.019186" elapsed="0.006963"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.026692" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:50.026295" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.027112" level="INFO">&lt;?xml version="1.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-08-10T02:07:50.026872" 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-08-10T02:07:50.035034" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.034737" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.040578" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.041063" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.041201" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.035188" elapsed="0.006040"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.041677" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.041424" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.044196" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.041863" elapsed="0.002389"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.046100" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.044319" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.044301" elapsed="0.001888"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.046328" 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-08-10T02:07:50.046570" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.046436" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.046420" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.046676" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:07:50.048286" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.048345" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.034424" elapsed="0.013946"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.050662" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.048909" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.048892" elapsed="0.001865"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.051531" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.050958" elapsed="0.000610"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.052271" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.051788" elapsed="0.000519"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.052400" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:50.052648" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.048580" elapsed="0.004103"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.052898" elapsed="0.000570"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:50.033854" elapsed="0.019702"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.062646" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.062347" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.067605" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.067757" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.067865" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.062800" elapsed="0.005090"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.068298" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.068050" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.070537" 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-08-10T02:07:50.068509" elapsed="0.002117"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.072446" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.070695" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.070676" elapsed="0.001841"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.075881" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.075945" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.072654" elapsed="0.003322"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.078504" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.076084" elapsed="0.002497"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.076058" elapsed="0.002555"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.078660" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:50.078924" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.078984" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.061955" elapsed="0.017060"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.082040" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.079793" elapsed="0.002310"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.079769" elapsed="0.002364"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.082773" 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-08-10T02:07:50.082373" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.083313" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.082961" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.083407" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.083584" 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-08-10T02:07:50.079315" elapsed="0.004294"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.083765" 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-08-10T02:07:50.061324" elapsed="0.022885"/>
</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-08-10T02:07:50.015917" elapsed="0.068347"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.009028" elapsed="0.075363"/>
</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-08-10T02:07:50.095264" 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-08-10T02:07:50.095436" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.095116" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.096071" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034b30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.095625" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.096546" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.096249" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.096990" 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-08-10T02:07:50.096724" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.097481" 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-08-10T02:07:50.097164" elapsed="0.000344"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.098620" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.097660" elapsed="0.000991"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.099153" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.098812" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.099747" 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-08-10T02:07:50.099424" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.100265" 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-08-10T02:07:50.099940" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.100786" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.100474" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.101295" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.100979" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.101857" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034b30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.101534" 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-08-10T02:07:50.094782" elapsed="0.007171"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.102508" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:50.102100" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.102927" level="INFO">&lt;?xml version="1.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-08-10T02:07:50.102687" 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-08-10T02:07:50.110704" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.110403" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.115718" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.116259" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.116385" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.110859" elapsed="0.005553"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.116820" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.116570" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.119906" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.117005" elapsed="0.002973"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.122605" elapsed="0.000087"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.120076" elapsed="0.002674"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.120048" 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-08-10T02:07:50.122983" 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-08-10T02:07:50.123300" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.123109" elapsed="0.000287"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.123086" elapsed="0.000343"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.123475" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:50.125800" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.125863" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.110071" elapsed="0.015823"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.128230" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.126540" elapsed="0.001735"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.126522" elapsed="0.001776"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.128854" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.128461" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.129418" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.129040" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.129493" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.129670" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.126191" elapsed="0.003503"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.129848" 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-08-10T02:07:50.109506" elapsed="0.020797"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.138052" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.137758" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.143129" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.143369" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.143522" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.138312" elapsed="0.005246"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.144126" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.143780" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.147273" 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-08-10T02:07:50.144413" elapsed="0.002952"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.149971" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.147461" elapsed="0.002580"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.147436" elapsed="0.002638"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.154132" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.154196" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.150276" elapsed="0.003952"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.156722" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.154357" elapsed="0.002492"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.154309" elapsed="0.002577"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.156935" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:50.157207" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.157271" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.137378" elapsed="0.019924"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.159817" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.158154" elapsed="0.001708"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.158127" elapsed="0.001758"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.160451" 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-08-10T02:07:50.160030" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.160987" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.160639" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.161063" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.161245" 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-08-10T02:07:50.157688" 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-08-10T02:07:50.161451" 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-08-10T02:07:50.136740" elapsed="0.025164"/>
</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-08-10T02:07:50.091486" elapsed="0.070474"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.084557" elapsed="0.077524"/>
</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-08-10T02:07:50.173154" 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-08-10T02:07:50.173328" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.173015" elapsed="0.000367"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.174038" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036f70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.173590" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.174527" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.174225" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.174971" 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-08-10T02:07:50.174704" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.175431" 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-08-10T02:07:50.175146" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.176137" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.175602" elapsed="0.000565"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.176692" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.176322" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.177282" 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-08-10T02:07:50.176920" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.177994" 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-08-10T02:07:50.177564" elapsed="0.000488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.178595" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.178252" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.179173" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.178831" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.179741" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036f70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.179402" 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-08-10T02:07:50.172687" elapsed="0.007158"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.180512" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:50.180018" elapsed="0.000529"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.180995" level="INFO">&lt;?xml version="1.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-08-10T02:07:50.180722" 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-08-10T02:07:50.188849" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.188543" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.195268" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.195868" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.195984" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.189005" elapsed="0.007006"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.196450" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.196175" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.201624" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.196638" elapsed="0.005061"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.204280" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.201799" elapsed="0.002597"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.201772" elapsed="0.002659"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.204627" 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-08-10T02:07:50.204937" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.204753" elapsed="0.000253"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.204731" elapsed="0.000307"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.205082" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:50.207055" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.207100" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.188209" elapsed="0.018913"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.209249" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.207681" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.207663" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.209960" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.209557" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.210511" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.210144" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.210585" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.210761" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.207349" elapsed="0.003437"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.210939" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:50.187647" elapsed="0.023755"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.219113" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.218819" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.224807" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.224959" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.225056" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.219265" elapsed="0.005816"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.225732" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.225253" elapsed="0.000542"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.228851" 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-08-10T02:07:50.225991" elapsed="0.002931"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.231475" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.229015" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.228990" elapsed="0.002584"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.234959" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.235004" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.231762" elapsed="0.003265"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.236818" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.235102" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.235083" elapsed="0.001813"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.236929" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:50.237119" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.237163" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.218447" elapsed="0.018739"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.239526" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.237765" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.237747" elapsed="0.001846"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.240137" 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-08-10T02:07:50.239739" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.240705" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.240351" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.240828" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:50.241008" 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-08-10T02:07:50.237420" elapsed="0.003613"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.241187" 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-08-10T02:07:50.217815" elapsed="0.023888"/>
</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-08-10T02:07:50.169434" elapsed="0.072326"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.162382" elapsed="0.079490"/>
</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-08-10T02:07:50.252830" 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-08-10T02:07:50.252962" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.252693" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.253585" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0360c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.253141" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.254039" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.253766" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.254499" 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-08-10T02:07:50.254213" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.254938" 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-08-10T02:07:50.254673" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.255846" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.255110" elapsed="0.000767"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.256373" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.256030" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.256882" 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-08-10T02:07:50.256566" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.257408" 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-08-10T02:07:50.257071" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.257959" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.257645" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.258486" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.258152" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.258996" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0360c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.258681" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:50.252367" elapsed="0.006724"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.259635" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:50.259237" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.260051" level="INFO">&lt;?xml version="1.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-08-10T02:07:50.259813" 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-08-10T02:07:50.267983" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.267690" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.276007" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.276714" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.276867" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.268136" elapsed="0.008768"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.277516" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.277122" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.281075" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.277781" elapsed="0.003366"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.283737" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.281243" elapsed="0.002586"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.281216" 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-08-10T02:07:50.284054" 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-08-10T02:07:50.284392" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.284178" elapsed="0.000288"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.284156" elapsed="0.000342"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.284542" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:50.286835" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.286898" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.267376" elapsed="0.019553"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.289969" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.287700" elapsed="0.002332"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.287676" elapsed="0.002386"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.290661" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.290247" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.291191" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.290845" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.291265" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:50.291458" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.287221" elapsed="0.004262"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.291635" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:50.266803" elapsed="0.025273"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.299854" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.299550" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.306044" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.306293" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.306489" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.300010" elapsed="0.006516"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.307094" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.306744" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.310442" 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-08-10T02:07:50.307375" elapsed="0.003139"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.313058" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.310611" elapsed="0.002516"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.310584" elapsed="0.002574"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.317292" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.317380" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.313370" 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-08-10T02:07:50.319511" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.317561" elapsed="0.002006"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.317532" elapsed="0.002059"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.319625" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.319819" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.319862" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.299148" elapsed="0.020737"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.322050" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.320444" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.320426" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.322683" 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-08-10T02:07:50.322268" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.323214" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.322869" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.323289" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.323484" 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-08-10T02:07:50.320098" elapsed="0.003412"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.323663" 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-08-10T02:07:50.298519" elapsed="0.025590"/>
</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-08-10T02:07:50.249071" elapsed="0.075094"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.242142" elapsed="0.082137"/>
</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-08-10T02:07:50.335138" 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-08-10T02:07:50.335305" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:50.335001" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.335893" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2b60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.335501" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.336408" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.336108" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.336852" 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-08-10T02:07:50.336585" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.337293" 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-08-10T02:07:50.337026" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.338323" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:50.337484" elapsed="0.000889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.338863" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.338531" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.339395" 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-08-10T02:07:50.339057" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.339911" 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-08-10T02:07:50.339588" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.340426" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.340099" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.340933" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.340620" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.341465" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff2b60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.341126" 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-08-10T02:07:50.334672" elapsed="0.006920"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.342116" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:50.341739" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.342551" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:07:50.342294" 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-08-10T02:07:50.350390" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.350070" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.356295" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.356846" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.356991" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.350545" elapsed="0.006472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.357475" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.357189" elapsed="0.000367"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.360808" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.357700" elapsed="0.003180"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.363454" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.360977" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.360950" elapsed="0.002633"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.363780" 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-08-10T02:07:50.364088" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.363904" elapsed="0.000255"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.363881" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.364235" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:50.369651" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.369716" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.349757" elapsed="0.019987"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.371959" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.370389" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.370370" elapsed="0.001656"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.372618" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.372182" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.373147" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.372803" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.373220" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:07:50.373420" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.370011" elapsed="0.003434"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.373634" 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-08-10T02:07:50.349157" elapsed="0.024926"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.381862" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.381561" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.387629" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.387779" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.387875" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.382026" elapsed="0.005875"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.388313" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.388061" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.391003" 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-08-10T02:07:50.388525" elapsed="0.002611"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.393706" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.391233" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.391207" elapsed="0.002599"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.397613" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.397678" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.393998" elapsed="0.003713"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.399703" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.397818" elapsed="0.001940"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.397792" elapsed="0.001990"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.399816" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:50.400008" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.400051" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.381140" elapsed="0.018934"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.402240" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.400635" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.400617" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.402865" 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-08-10T02:07:50.402470" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.403419" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.403051" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.403493" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.403671" 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-08-10T02:07:50.400286" 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-08-10T02:07:50.403850" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:50.380530" elapsed="0.023769"/>
</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-08-10T02:07:50.331410" elapsed="0.072966"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.324556" elapsed="0.079937"/>
</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-08-10T02:07:50.415414" 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-08-10T02:07:50.415553" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:50.415255" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.416126" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0366b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.415731" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.416605" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.416304" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.417047" 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-08-10T02:07:50.416781" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.417502" 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-08-10T02:07:50.417219" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.418484" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:50.417701" elapsed="0.000814"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.419000" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.418670" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.419579" 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-08-10T02:07:50.419234" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.420096" 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-08-10T02:07:50.419772" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.420617" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.420289" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.421125" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.420812" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.421683" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0366b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.421317" 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-08-10T02:07:50.414917" elapsed="0.006863"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.422308" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:50.421927" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.422745" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:50.422506" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.430476" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.430162" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.436546" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.437024" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.437123" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.430630" elapsed="0.006518"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.437609" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.437308" elapsed="0.000349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.440984" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.437800" elapsed="0.003254"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.443625" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.441149" elapsed="0.002566"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.441122" elapsed="0.002625"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.443943" 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-08-10T02:07:50.444252" elapsed="0.000099"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.444066" elapsed="0.000335"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.444044" elapsed="0.000390"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.444480" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:50.446695" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.446739" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.429848" elapsed="0.016914"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.448907" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.447301" elapsed="0.001652"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.447284" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.449540" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.449122" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.450124" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.449772" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.450200" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.450397" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.446974" 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-08-10T02:07:50.450578" 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-08-10T02:07:50.429248" elapsed="0.021778"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.458933" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.458637" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.464648" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.464798" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.464894" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.459087" elapsed="0.005832"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.465356" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.465079" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.467783" 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-08-10T02:07:50.465547" 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-08-10T02:07:50.469684" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.467902" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.467883" elapsed="0.001873"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.473258" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.473323" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.469893" elapsed="0.003486"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.475873" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.473487" elapsed="0.002464"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.473461" elapsed="0.002523"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.476030" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:50.476302" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.476388" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.458243" elapsed="0.018178"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.479130" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.477234" elapsed="0.001942"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.477209" elapsed="0.001989"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.479763" 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-08-10T02:07:50.479360" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.480307" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.479952" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.480401" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:50.480581" 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-08-10T02:07:50.476774" elapsed="0.003832"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.480761" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:50.457626" elapsed="0.023584"/>
</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-08-10T02:07:50.411641" elapsed="0.069626"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.404769" elapsed="0.076624"/>
</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-08-10T02:07:50.492203" 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-08-10T02:07:50.492348" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:50.492068" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.492926" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3690d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.492531" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.493402" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.493104" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.493876" 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-08-10T02:07:50.493579" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.494315" 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-08-10T02:07:50.494049" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.495289" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:50.494508" elapsed="0.000812"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.495825" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.495493" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.496351" 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-08-10T02:07:50.496018" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.496873" 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-08-10T02:07:50.496545" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.497390" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:50.497064" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.497950" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:50.497587" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.498482" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3690d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.498146" 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-08-10T02:07:50.491742" elapsed="0.006878"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.499149" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:50.498767" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.499589" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:50.499331" 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-08-10T02:07:50.507351" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.507039" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.513192" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.513949" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.514094" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.507509" elapsed="0.006621"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.514737" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.514381" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.518398" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.514998" elapsed="0.003473"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.521032" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.518577" elapsed="0.002545"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.518546" elapsed="0.002610"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.521371" 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-08-10T02:07:50.521720" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.521497" elapsed="0.000303"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.521475" elapsed="0.000357"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.521876" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:50.523670" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.523715" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.506726" elapsed="0.017011"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.525879" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.524280" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.524263" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.526509" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.526090" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.527087" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.526733" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.527162" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.527359" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.523947" 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-08-10T02:07:50.527541" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:50.506158" elapsed="0.021828"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.535739" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.535444" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.540939" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.541088" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.541185" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.535893" elapsed="0.005318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.541655" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.541391" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.544009" 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-08-10T02:07:50.541841" 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-08-10T02:07:50.545925" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.544127" elapsed="0.001848"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.544109" elapsed="0.001888"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.549625" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.549708" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.546133" elapsed="0.003608"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.552210" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.549848" elapsed="0.002438"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.549822" elapsed="0.002497"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.552388" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:50.552657" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.552717" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.535055" elapsed="0.017693"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.555312" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.553524" elapsed="0.001856"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.553499" elapsed="0.001903"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.555942" 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-08-10T02:07:50.555547" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.556499" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.556129" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.556574" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.556749" 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-08-10T02:07:50.553045" elapsed="0.003728"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.556977" 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-08-10T02:07:50.534449" elapsed="0.023006"/>
</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-08-10T02:07:50.488508" elapsed="0.069002"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.481666" elapsed="0.075953"/>
</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-08-10T02:07:50.568516" 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-08-10T02:07:50.568651" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:50.568376" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.569240" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3687c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.568833" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.569741" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.569436" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.570188" 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-08-10T02:07:50.569917" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.570646" 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-08-10T02:07:50.570379" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.571664" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:50.570818" elapsed="0.000877"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.572185" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.571852" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.572717" 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-08-10T02:07:50.572400" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.573229" 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-08-10T02:07:50.572908" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.573756" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.573433" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.574266" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.573951" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.574791" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3687c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.574476" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:50.568033" elapsed="0.006853"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.575435" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:50.575032" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.575854" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:50.575614" 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-08-10T02:07:50.583654" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.583355" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.588355" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.588870" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.588971" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.583808" elapsed="0.005189"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.589427" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.589154" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.591948" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.589612" elapsed="0.002387"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.597876" elapsed="0.000051"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.592071" elapsed="0.005912"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.592051" elapsed="0.005966"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.598241" 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-08-10T02:07:50.598620" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.598426" elapsed="0.000265"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.598398" elapsed="0.000324"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.598766" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:50.601014" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.601078" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.583026" 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-08-10T02:07:50.603657" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.601928" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.601903" elapsed="0.001820"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.604260" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.603867" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.604812" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.604463" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.604887" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.605062" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.601427" elapsed="0.003660"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.605240" 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-08-10T02:07:50.582476" elapsed="0.023245"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.613465" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.613149" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.618603" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.618945" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.619056" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.613619" elapsed="0.005463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.619522" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.619241" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.621754" 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-08-10T02:07:50.619710" elapsed="0.002096"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.624165" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.621873" elapsed="0.002361"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.621855" elapsed="0.002410"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.628101" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.628165" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.624483" elapsed="0.003715"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.630620" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.628304" elapsed="0.002372"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.628278" elapsed="0.002422"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.630733" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:50.630924" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.630968" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.612773" elapsed="0.018218"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.633123" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.631546" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.631528" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.633760" 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-08-10T02:07:50.633349" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.634296" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.633948" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.634390" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:50.634568" 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-08-10T02:07:50.631202" elapsed="0.003392"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.634753" 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-08-10T02:07:50.612146" elapsed="0.023051"/>
</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-08-10T02:07:50.564784" elapsed="0.070467"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.557871" elapsed="0.077514"/>
</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-08-10T02:07:50.646263" 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-08-10T02:07:50.646409" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:50.646118" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.646985" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef6a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.646589" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.647510" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.647164" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.647963" 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-08-10T02:07:50.647691" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.648427" 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-08-10T02:07:50.648139" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.650893" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:50.648600" elapsed="0.002325"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.651431" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.651082" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.651945" 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-08-10T02:07:50.651628" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.652481" 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-08-10T02:07:50.652137" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.652984" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:50.652673" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.653508" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:50.653177" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.654049" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef6a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.653701" 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-08-10T02:07:50.645791" elapsed="0.008353"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.654685" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:50.654289" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.655098" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&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-08-10T02:07:50.654860" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.662896" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.662597" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.667903" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.668414" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.668525" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.663050" elapsed="0.005501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.668990" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.668740" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.672053" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.669175" elapsed="0.002949"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.674809" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.672219" elapsed="0.002682"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.672193" elapsed="0.002741"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.675130" 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-08-10T02:07:50.675473" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.675262" elapsed="0.000284"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.675237" elapsed="0.000343"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.675625" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:50.677943" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.678006" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.662263" elapsed="0.015775"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.680347" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.678738" elapsed="0.001655"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.678720" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.680958" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.680562" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.681510" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.681143" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.681585" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:50.681774" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.678384" elapsed="0.003416"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.681954" 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-08-10T02:07:50.661676" elapsed="0.020751"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.690206" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.689909" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.695170" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.695410" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.695546" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.690384" elapsed="0.005198"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.696232" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.695802" elapsed="0.000493"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.699608" 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-08-10T02:07:50.696518" elapsed="0.003212"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.702353" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.699828" elapsed="0.002576"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.699801" elapsed="0.002626"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.705056" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.705102" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.702568" elapsed="0.002557"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.706955" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.705201" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.705182" elapsed="0.001853"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.707069" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:50.707262" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.707305" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.689493" elapsed="0.017835"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.709484" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.707887" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.707869" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.710117" 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-08-10T02:07:50.709695" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.710670" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.710302" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.710745" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.710921" 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-08-10T02:07:50.707561" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.711100" 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-08-10T02:07:50.688860" elapsed="0.022704"/>
</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-08-10T02:07:50.642539" elapsed="0.069080"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.635658" elapsed="0.076069"/>
</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-08-10T02:07:50.722576" 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-08-10T02:07:50.722707" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.722441" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.723295" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff04f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.722885" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.723772" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.723498" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.724214" 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-08-10T02:07:50.723948" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.724674" 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-08-10T02:07:50.724406" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.725735" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.724846" elapsed="0.000947"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.726283" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.725953" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.726858" 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-08-10T02:07:50.726533" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.727394" 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-08-10T02:07:50.727050" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.727900" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.727587" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.728428" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.728095" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.728941" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff04f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.728624" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:50.722090" elapsed="0.006947"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.729581" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:50.729184" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.730018" level="INFO">&lt;?xml version="1.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-08-10T02:07:50.729760" 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-08-10T02:07:50.737735" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.737440" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.742218" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.742915" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.743056" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.737935" elapsed="0.005156"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.743691" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.743317" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.747223" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.743951" elapsed="0.003343"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.749856" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.747415" elapsed="0.002576"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.747388" elapsed="0.002640"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.750233" 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-08-10T02:07:50.750573" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.750384" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.750358" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.750722" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:50.752990" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.753053" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.737110" elapsed="0.015974"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.755609" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.753937" elapsed="0.001717"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.753911" elapsed="0.001764"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.756213" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.755820" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.756767" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.756421" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.756842" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.757018" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.753405" elapsed="0.003638"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.757198" 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-08-10T02:07:50.736564" elapsed="0.021095"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.765430" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.765116" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.770679" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.770889" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.771024" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.765586" elapsed="0.005473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.771664" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.771285" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.775122" 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-08-10T02:07:50.771928" elapsed="0.003267"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.777770" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.775294" elapsed="0.002561"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.775266" elapsed="0.002620"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.781910" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.781976" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.778084" 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-08-10T02:07:50.783857" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.782114" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.782088" elapsed="0.001848"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.784012" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:50.784210" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.784254" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.764742" elapsed="0.019534"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.786505" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.784850" elapsed="0.001701"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.784832" elapsed="0.001741"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.787127" 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-08-10T02:07:50.786718" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.787693" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.787321" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.787770" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:50.787947" 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-08-10T02:07:50.784517" elapsed="0.003455"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.788154" 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-08-10T02:07:50.764119" elapsed="0.024508"/>
</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-08-10T02:07:50.718795" elapsed="0.069888"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.711963" elapsed="0.076835"/>
</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-08-10T02:07:50.799853" 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-08-10T02:07:50.800007" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.799712" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.800642" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.800189" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.801114" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.800823" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.801587" 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-08-10T02:07:50.801294" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.802077" 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-08-10T02:07:50.801763" elapsed="0.000345"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.803213" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.802267" elapsed="0.000984"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.803766" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.803428" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.804288" 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-08-10T02:07:50.803962" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.804838" 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-08-10T02:07:50.804510" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.805356" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.805028" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.805937" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.805574" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.806531" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.806179" 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-08-10T02:07:50.799377" elapsed="0.007254"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.807162" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:50.806778" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.807617" level="INFO">&lt;?xml version="1.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-08-10T02:07:50.807359" 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-08-10T02:07:50.818736" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.818390" elapsed="0.000374"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.824597" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.825154" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.825292" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.818893" elapsed="0.006435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.825966" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.825582" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.829604" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.826249" elapsed="0.003429"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.832255" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.829776" elapsed="0.002596"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.829750" elapsed="0.002659"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.832609" 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-08-10T02:07:50.832936" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.832745" elapsed="0.000263"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.832719" elapsed="0.000321"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.833085" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:50.835145" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.835190" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.818055" 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-08-10T02:07:50.837475" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.835855" elapsed="0.001666"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.835838" elapsed="0.001704"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.838113" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.837691" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.838698" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.838319" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.838775" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:50.838955" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.835515" elapsed="0.003465"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.839136" 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-08-10T02:07:50.817396" elapsed="0.022224"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.847480" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.847162" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.853436" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.853602" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.853713" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.847634" elapsed="0.006105"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.854203" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.853947" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.856447" 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-08-10T02:07:50.854415" elapsed="0.002084"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.858379" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.856567" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.856548" elapsed="0.001906"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.861310" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.861376" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.858594" elapsed="0.002807"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.863668" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.861478" elapsed="0.002269"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.861459" elapsed="0.002321"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.863827" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:07:50.864097" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.864157" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.846788" elapsed="0.017400"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.867275" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.865001" elapsed="0.002360"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.864976" elapsed="0.002419"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.868360" 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-08-10T02:07:50.867750" elapsed="0.000652"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.869141" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.868632" elapsed="0.000547"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.869249" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:07:50.869528" 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-08-10T02:07:50.864539" elapsed="0.005024"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.869780" elapsed="0.000578"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:50.846152" elapsed="0.024272"/>
</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-08-10T02:07:50.795948" elapsed="0.074533"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.789057" elapsed="0.081534"/>
</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-08-10T02:07:50.881550" 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-08-10T02:07:50.881682" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.881411" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.882310" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36aa20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.881861" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.882784" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.882509" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.883253" 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-08-10T02:07:50.882963" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.883717" 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-08-10T02:07:50.883448" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.884829" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.883889" elapsed="0.000971"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.885380" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.885014" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.885944" 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-08-10T02:07:50.885579" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.886506" 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-08-10T02:07:50.886144" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.887011" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.886699" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.887553" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.887205" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.888068" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36aa20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.887749" 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-08-10T02:07:50.881061" elapsed="0.007102"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.888726" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:50.888311" elapsed="0.000482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.889192" level="INFO">&lt;?xml version="1.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-08-10T02:07:50.888948" 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-08-10T02:07:50.897032" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.896735" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.902654" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.903322" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.903491" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.897192" elapsed="0.006334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.904095" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.903750" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.907676" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.904389" elapsed="0.003359"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:50.910283" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.907844" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.907818" 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-08-10T02:07:50.910529" 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-08-10T02:07:50.910751" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.910617" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.910601" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.910856" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:07:50.912482" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.912526" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.896418" elapsed="0.016131"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.914848" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.913085" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.913067" elapsed="0.001854"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.915486" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.915067" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.916086" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.915709" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.916164" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:50.916369" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.912758" elapsed="0.003638"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.916555" 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-08-10T02:07:50.895838" elapsed="0.021163"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.924907" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.924589" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.930252" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.930426" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:50.930533" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.925063" elapsed="0.005495"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.930965" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.930716" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.933152" 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-08-10T02:07:50.931150" elapsed="0.002052"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.935495" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.933270" elapsed="0.002297"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.933251" elapsed="0.002355"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.939553" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:50.939617" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:50.935812" elapsed="0.003836"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:50.942226" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.939755" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.939729" elapsed="0.002578"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:50.942358" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:50.942554" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:50.942597" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:50.924195" elapsed="0.018424"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.944768" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.943156" elapsed="0.001656"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.943139" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.945398" 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-08-10T02:07:50.944980" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.945959" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.945593" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.946035" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:50.946210" 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-08-10T02:07:50.942831" elapsed="0.003438"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.946446" 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-08-10T02:07:50.923582" elapsed="0.023325"/>
</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-08-10T02:07:50.877739" elapsed="0.069224"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.870815" elapsed="0.076257"/>
</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-08-10T02:07:50.958267" 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-08-10T02:07:50.958421" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.958127" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:50.959021" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:50.958606" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.959491" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:50.959200" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.959938" 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-08-10T02:07:50.959667" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:50.960397" 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-08-10T02:07:50.960113" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:50.961262" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.960569" elapsed="0.000724"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.961791" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.961464" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.962352" 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-08-10T02:07:50.962009" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.962866" 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-08-10T02:07:50.962545" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.963385" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:50.963055" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.963895" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:50.963580" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.964424" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:50.964086" 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-08-10T02:07:50.957720" elapsed="0.006801"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.965050" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:50.964669" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.965491" level="INFO">&lt;?xml version="1.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-08-10T02:07:50.965229" 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-08-10T02:07:50.973317" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:50.973016" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:50.978786" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:50.979270" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:50.979409" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:50.973493" elapsed="0.005943"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.979855" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.979600" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.982680" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:50.980078" 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-08-10T02:07:50.985282" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:07:50.982854" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.982827" elapsed="0.002607"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:50.985633" 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-08-10T02:07:50.985964" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:50.985759" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:50.985736" elapsed="0.000335"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.986116" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:50.988456" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:50.988520" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:50.972619" elapsed="0.015932"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:50.991278" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:50.989324" elapsed="0.001999"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:50.989300" elapsed="0.002061"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.991913" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.991509" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:50.992469" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:50.992097" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:50.992545" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:50.992721" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:50.988858" elapsed="0.003893"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:50.992910" 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-08-10T02:07:50.972049" elapsed="0.021326"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.001132" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.000834" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.006510" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.006784" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.006923" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.001287" elapsed="0.005672"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.007560" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.007179" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.010655" 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-08-10T02:07:51.007820" elapsed="0.002905"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.013250" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.010820" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.010795" elapsed="0.002574"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.017396" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.017461" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.013563" 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-08-10T02:07:51.019688" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.017600" elapsed="0.002144"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.017574" elapsed="0.002194"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.019802" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.019994" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.020037" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.000451" elapsed="0.019608"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.022254" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.020640" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.020623" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.022886" 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-08-10T02:07:51.022486" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.023445" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.023074" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.023520" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.023695" 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-08-10T02:07:51.020283" elapsed="0.003437"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.023875" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:50.999822" elapsed="0.024501"/>
</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-08-10T02:07:50.954449" elapsed="0.069953"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:50.947305" elapsed="0.077222"/>
</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-08-10T02:07:51.035456" 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-08-10T02:07:51.035611" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.035291" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.036216" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.035793" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.036740" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.036455" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.037186" 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-08-10T02:07:51.036919" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.037646" 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-08-10T02:07:51.037378" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.038601" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.037820" elapsed="0.000813"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.039120" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.038790" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.039655" 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-08-10T02:07:51.039320" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.040168" 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-08-10T02:07:51.039846" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.040691" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.040382" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.041196" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.040883" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.041722" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.041406" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:51.034960" elapsed="0.006857"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.045469" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:51.041961" elapsed="0.003540"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.045913" level="INFO">&lt;?xml version="1.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-08-10T02:07:51.045671" 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-08-10T02:07:51.053901" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.053602" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.059427" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.060203" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.060424" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.054103" elapsed="0.006359"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.061033" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.060684" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.064615" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.061300" elapsed="0.003387"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.067262" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.064796" elapsed="0.002556"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.064768" elapsed="0.002610"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:51.067520" 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-08-10T02:07:51.067742" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.067610" elapsed="0.000182"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.067594" elapsed="0.000221"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.067847" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:07:51.069474" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.069518" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.053270" elapsed="0.016271"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.071717" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.070133" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.070115" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.072321" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.071928" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.072874" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.072530" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.072948" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.073123" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.069752" elapsed="0.003395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.073299" 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-08-10T02:07:51.052711" elapsed="0.021053"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.081606" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.081289" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.086863" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.087015" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.087113" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.081761" elapsed="0.005377"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.087570" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.087294" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.091783" 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-08-10T02:07:51.087756" elapsed="0.004147"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.094482" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.092001" elapsed="0.002550"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.091975" elapsed="0.002607"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.098611" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.098676" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.094775" elapsed="0.003932"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.100632" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.098815" elapsed="0.001872"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.098790" elapsed="0.001921"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.100744" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.100935" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.100978" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.080911" elapsed="0.020089"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.103187" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.101558" elapsed="0.001675"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.101540" elapsed="0.001715"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.103814" 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-08-10T02:07:51.103418" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.104366" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.104002" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.104442" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.104620" 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-08-10T02:07:51.101211" elapsed="0.003434"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.104797" elapsed="0.000379"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:51.080284" elapsed="0.024955"/>
</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-08-10T02:07:51.031700" elapsed="0.073595"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.024833" elapsed="0.080592"/>
</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-08-10T02:07:51.116282" 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-08-10T02:07:51.116439" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.116142" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.117037" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0270&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.116620" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.117505" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.117213" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.117945" 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-08-10T02:07:51.117680" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.118441" 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-08-10T02:07:51.118151" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.119505" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.118616" elapsed="0.000920"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.120020" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.119690" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.120611" 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-08-10T02:07:51.120264" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.121129" 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-08-10T02:07:51.120802" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.121652" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.121319" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.122196" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.121847" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.122733" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0270&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.122410" 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-08-10T02:07:51.115815" elapsed="0.007015"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.123372" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:51.122976" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.123794" level="INFO">&lt;?xml version="1.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-08-10T02:07:51.123551" 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-08-10T02:07:51.131563" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.131246" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.137401" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.137917" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.138024" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.131716" elapsed="0.006369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.138536" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.138253" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.141834" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.138722" elapsed="0.003183"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.144534" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.141998" elapsed="0.002671"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.141973" 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-08-10T02:07:51.144904" 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-08-10T02:07:51.145219" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.145031" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.145007" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.145408" elapsed="0.000024"/>
</return>
<msg time="2026-08-10T02:07:51.147725" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.147789" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.130925" elapsed="0.016896"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.150864" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.148607" elapsed="0.002323"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.148582" elapsed="0.002379"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.151673" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.151167" elapsed="0.000533"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.152218" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.151861" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.152294" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.152494" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.148119" elapsed="0.004400"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.152675" 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-08-10T02:07:51.130371" elapsed="0.022760"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.160877" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.160584" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.165838" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.165990" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.166133" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.161029" elapsed="0.005131"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.166594" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.166321" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.169431" 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-08-10T02:07:51.166779" 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-08-10T02:07:51.172088" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.169598" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.169572" elapsed="0.002614"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.175889" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.175935" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.172402" elapsed="0.003555"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.177732" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.176033" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.176015" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.177889" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:51.178099" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.178144" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.160191" elapsed="0.017976"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.180316" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.178752" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.178729" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.180940" 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-08-10T02:07:51.180545" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.181494" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.181127" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.181571" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.181747" 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-08-10T02:07:51.178407" elapsed="0.003365"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.181926" 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-08-10T02:07:51.159585" elapsed="0.022835"/>
</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-08-10T02:07:51.112535" elapsed="0.069940"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.105689" elapsed="0.076895"/>
</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-08-10T02:07:51.193463" 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-08-10T02:07:51.193605" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.193305" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.194252" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeed90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.193787" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.194725" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.194447" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.195170" 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-08-10T02:07:51.194901" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.195629" 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-08-10T02:07:51.195358" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.196767" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.195800" elapsed="0.000998"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.197290" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.196955" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.197823" 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-08-10T02:07:51.197505" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.198394" 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-08-10T02:07:51.198014" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.198902" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.198591" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.199435" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.199096" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.200001" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbeed90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.199680" 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-08-10T02:07:51.192977" elapsed="0.007121"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.200651" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:51.200244" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.201067" level="INFO">&lt;?xml version="1.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-08-10T02:07:51.200827" 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-08-10T02:07:51.208970" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.208658" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.213826" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.214419" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.214527" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.209126" elapsed="0.005427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.214988" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.214714" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.218604" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.215178" 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-08-10T02:07:51.221408" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.218780" elapsed="0.002728"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.218752" 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-08-10T02:07:51.221744" 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-08-10T02:07:51.222063" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.221873" elapsed="0.000365"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.221851" elapsed="0.000429"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.222331" elapsed="0.000048"/>
</return>
<msg time="2026-08-10T02:07:51.224292" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.224351" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.208310" elapsed="0.016099"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.226558" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.224964" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.224947" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.227164" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.226769" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.227718" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.227367" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.227792" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.227968" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.224629" elapsed="0.003366"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.228149" 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-08-10T02:07:51.207732" elapsed="0.020884"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.236525" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.236211" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.242854" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.243004" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.243111" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.236679" elapsed="0.006457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.243577" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.243301" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.245754" 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-08-10T02:07:51.243760" elapsed="0.002045"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.247836" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.245872" elapsed="0.002033"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.245854" elapsed="0.002081"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.251880" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.251944" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.248124" elapsed="0.003853"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.254536" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.252084" elapsed="0.002530"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.252058" elapsed="0.002589"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.254693" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:51.254960" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.255021" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.235838" elapsed="0.019214"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.257234" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.255662" elapsed="0.001617"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.255644" elapsed="0.001656"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.257902" 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-08-10T02:07:51.257504" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.258474" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.258090" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.258554" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:51.258732" 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-08-10T02:07:51.255315" elapsed="0.003443"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.258912" 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-08-10T02:07:51.235204" elapsed="0.024177"/>
</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-08-10T02:07:51.189698" elapsed="0.069741"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.182825" elapsed="0.076730"/>
</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-08-10T02:07:51.271676" 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-08-10T02:07:51.271808" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.271540" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.272429" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bf60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.271988" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.272884" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.272608" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.273327" 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-08-10T02:07:51.273061" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.273786" 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-08-10T02:07:51.273520" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.274761" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.273958" elapsed="0.000833"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.275278" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.274948" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.275808" 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-08-10T02:07:51.275490" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.276323" 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-08-10T02:07:51.276001" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.276841" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.276530" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.277368" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.277033" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.277882" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bf60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.277565" 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-08-10T02:07:51.271190" elapsed="0.006788"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.278557" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:51.278128" elapsed="0.000496"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.279018" level="INFO">&lt;?xml version="1.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-08-10T02:07:51.278777" 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-08-10T02:07:51.286799" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.286502" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.292593" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.293226" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.293362" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.286953" elapsed="0.006437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.293801" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.293549" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.296822" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.293988" elapsed="0.002907"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.299525" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.296992" elapsed="0.002626"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.296965" 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-08-10T02:07:51.299847" 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-08-10T02:07:51.300156" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.299971" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.299948" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.300302" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:51.302623" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.302685" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.286138" elapsed="0.016579"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.305086" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.303491" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.303473" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.305722" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.305305" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.306319" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.305945" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.306414" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.306597" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.303013" elapsed="0.003609"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.306776" 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-08-10T02:07:51.285584" elapsed="0.021642"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.315079" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.314781" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.320788" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.320943" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.321040" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.315236" elapsed="0.005829"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.321621" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.321230" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.324715" 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-08-10T02:07:51.321880" elapsed="0.002905"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.327384" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.324877" elapsed="0.002577"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.324852" elapsed="0.002633"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.331406" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.331461" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.327676" elapsed="0.003811"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.333478" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.331564" elapsed="0.001971"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.331546" elapsed="0.002012"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.333592" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:07:51.333782" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.333825" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.314356" elapsed="0.019491"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.336010" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.334419" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.334402" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.336642" 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-08-10T02:07:51.336225" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.337184" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.336829" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.337258" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.337454" 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-08-10T02:07:51.334060" elapsed="0.003455"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.337673" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:51.313689" elapsed="0.024430"/>
</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-08-10T02:07:51.266874" elapsed="0.071301"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.259830" elapsed="0.078494"/>
</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-08-10T02:07:51.349324" 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-08-10T02:07:51.349476" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.349188" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.350081" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037880&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.349656" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.350588" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.350293" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.351042" 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-08-10T02:07:51.350765" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.351505" 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-08-10T02:07:51.351219" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.352466" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.351679" elapsed="0.000818"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.352981" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.352653" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.353510" 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-08-10T02:07:51.353175" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.354021" 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-08-10T02:07:51.353701" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.354604" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.354249" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.355117" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.354802" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.355676" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037880&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.355351" 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-08-10T02:07:51.348858" elapsed="0.006914"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.356307" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:51.355920" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.356754" level="INFO">&lt;?xml version="1.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-08-10T02:07:51.356510" 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-08-10T02:07:51.364897" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.364589" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.371783" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.372500" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.372659" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.365067" elapsed="0.007630"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.373279" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.372921" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.376929" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.373570" elapsed="0.003434"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.379641" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.377115" elapsed="0.002620"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.377086" elapsed="0.002684"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:51.379984" 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-08-10T02:07:51.380307" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.380114" elapsed="0.000293"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.380091" elapsed="0.000348"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.380484" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:51.382843" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.382906" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.364245" elapsed="0.018692"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.385211" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.383607" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.383590" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.385865" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.385458" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.386460" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.386053" elapsed="0.000434"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.386536" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:51.386715" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.383252" elapsed="0.003488"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.386897" 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-08-10T02:07:51.363670" elapsed="0.023706"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.395354" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.395042" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.400910" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.401204" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.401381" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.395510" elapsed="0.005910"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.402019" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.401654" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.405443" 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-08-10T02:07:51.402305" elapsed="0.003211"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.408122" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.405616" elapsed="0.002576"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.405588" elapsed="0.002636"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.412299" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.412409" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.408443" elapsed="0.004008"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.414976" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.412564" elapsed="0.002490"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.412538" elapsed="0.002549"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.415135" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:07:51.415444" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.415488" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.394667" elapsed="0.020844"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.417682" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.416081" elapsed="0.001648"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.416064" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.418384" 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-08-10T02:07:51.417922" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.418930" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.418576" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.419005" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.419183" 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-08-10T02:07:51.415743" elapsed="0.003465"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.419382" 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-08-10T02:07:51.394010" elapsed="0.025833"/>
</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-08-10T02:07:51.345562" elapsed="0.074342"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.338646" elapsed="0.081382"/>
</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-08-10T02:07:51.430871" 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-08-10T02:07:51.431030" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.430728" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.431658" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff31f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.431213" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.432168" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.431882" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.432638" 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-08-10T02:07:51.432364" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.433088" 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-08-10T02:07:51.432818" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.434141" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.433264" elapsed="0.000908"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.434720" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.434376" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.435243" 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-08-10T02:07:51.434916" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.435780" 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-08-10T02:07:51.435453" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.436283" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.435971" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.436811" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.436493" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.437321" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff31f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.437004" 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-08-10T02:07:51.430393" elapsed="0.007045"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.437967" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:51.437586" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.438499" level="INFO">&lt;?xml version="1.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-08-10T02:07:51.438147" elapsed="0.000416"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.446205" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.445901" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.452917" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.453490" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.453633" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.446423" elapsed="0.007237"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.454075" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.453820" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.457280" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.454309" elapsed="0.003067"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.459925" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.457473" elapsed="0.002545"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.457447" elapsed="0.002604"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:51.460250" 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-08-10T02:07:51.460586" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.460400" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.460376" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.460734" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:51.463048" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.463110" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.445590" elapsed="0.017552"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.465386" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.463796" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.463779" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.465989" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.465596" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.466559" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.466175" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.466634" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.466814" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.463464" elapsed="0.003375"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.466994" 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-08-10T02:07:51.445015" elapsed="0.022446"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.475326" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.475016" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.481679" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.481841" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.481953" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.475501" elapsed="0.006478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.482547" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.482141" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.485692" 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-08-10T02:07:51.482826" elapsed="0.002989"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.488510" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.485914" elapsed="0.002668"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.485888" elapsed="0.002726"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.492491" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.492540" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.488809" elapsed="0.003754"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.494398" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.492649" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.492629" elapsed="0.001854"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.494518" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.494713" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.494759" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.474632" elapsed="0.020149"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.496939" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.495331" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.495312" elapsed="0.001694"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.497591" 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-08-10T02:07:51.497159" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.498144" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.497779" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.498221" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.498464" 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-08-10T02:07:51.494999" elapsed="0.003492"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.498649" 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-08-10T02:07:51.473969" elapsed="0.025138"/>
</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-08-10T02:07:51.427081" elapsed="0.072086"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.420219" elapsed="0.079066"/>
</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-08-10T02:07:51.512548" 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-08-10T02:07:51.512730" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.512404" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.513368" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.512916" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.513843" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.513550" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.514347" 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-08-10T02:07:51.514024" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.514822" 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-08-10T02:07:51.514537" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.517767" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.515019" elapsed="0.002782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.518354" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.517960" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.518945" 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-08-10T02:07:51.518613" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.519530" 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-08-10T02:07:51.519141" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.520045" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.519725" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.520588" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:07:51.520242" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.521114" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.520784" 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-08-10T02:07:51.512050" elapsed="0.009163"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.521821" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:07:51.521406" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.522252" level="INFO">&lt;?xml version="1.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-08-10T02:07:51.522004" 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-08-10T02:07:51.530023" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.529721" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.536287" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.536914" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.537035" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.530180" elapsed="0.006882"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.537526" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.537232" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.540546" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.537716" elapsed="0.002903"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.543274" elapsed="0.000054"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.540772" elapsed="0.002656"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.540742" elapsed="0.002722"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:51.543664" 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-08-10T02:07:51.543976" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.543789" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.543767" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.544125" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:51.546424" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.546489" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.529407" elapsed="0.017114"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.549540" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.547296" elapsed="0.002308"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.547271" elapsed="0.002364"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.550461" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.549840" elapsed="0.000660"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.551213" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.550724" elapsed="0.000523"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.551296" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.551493" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.546832" elapsed="0.004686"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.551674" 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-08-10T02:07:51.528836" elapsed="0.023301"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.559947" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.559647" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.565715" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.565869" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.565965" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.560103" elapsed="0.005888"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.566458" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.566149" elapsed="0.000354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.569575" 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-08-10T02:07:51.566645" elapsed="0.003001"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.572237" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.569742" elapsed="0.002565"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.569715" elapsed="0.002644"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.576087" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.576133" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.572558" elapsed="0.003597"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.577934" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.576231" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.576213" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.578086" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:51.578281" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.578324" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.559251" elapsed="0.019125"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.580511" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.578919" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.578902" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.581121" 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-08-10T02:07:51.580725" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.581674" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.581309" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.581749" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.581925" 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-08-10T02:07:51.578593" elapsed="0.003357"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.582107" 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-08-10T02:07:51.558632" elapsed="0.023968"/>
</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-08-10T02:07:51.508753" elapsed="0.073902"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.499616" elapsed="0.083159"/>
</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-08-10T02:07:51.593547" 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-08-10T02:07:51.593688" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:51.593407" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.594278" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0db0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.593869" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.594768" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.594489" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.595212" 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-08-10T02:07:51.594945" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.595673" 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-08-10T02:07:51.595404" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.596710" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:51.595847" elapsed="0.000894"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.597228" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.596899" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.597754" 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-08-10T02:07:51.597438" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.598263" 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-08-10T02:07:51.597944" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.598809" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.598500" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.599380" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.599040" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.599895" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0db0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.599576" 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-08-10T02:07:51.593061" elapsed="0.006930"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.600539" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:51.600139" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.600959" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:51.600719" 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-08-10T02:07:51.608890" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.608590" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.614305" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.614865" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.614966" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.609045" elapsed="0.005947"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.615554" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.615152" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.619126" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.615816" elapsed="0.003382"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.621759" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.619295" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.619268" elapsed="0.002618"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:51.622082" 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-08-10T02:07:51.622453" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.622205" elapsed="0.000323"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.622183" elapsed="0.000377"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.622604" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:51.624484" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.624529" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.608253" 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-08-10T02:07:51.626735" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.625134" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.625116" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.627366" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.626947" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.627901" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.627554" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.627976" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.628153" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.624802" elapsed="0.003376"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.628349" 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-08-10T02:07:51.607686" elapsed="0.021112"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.636592" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.636277" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.642324" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.642741" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.642985" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.636747" elapsed="0.006296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.644015" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.643440" elapsed="0.000674"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.648449" 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-08-10T02:07:51.644467" elapsed="0.004058"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.651134" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.648625" elapsed="0.002577"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.648598" elapsed="0.002635"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.655067" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.655131" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.651451" 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-08-10T02:07:51.656974" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.655259" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.655241" elapsed="0.001813"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.657087" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.657279" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.657323" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.635899" elapsed="0.021464"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.659532" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.657914" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.657896" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.660187" 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-08-10T02:07:51.659784" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.660748" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.660395" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.660824" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:51.661003" 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-08-10T02:07:51.657582" elapsed="0.003446"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.661186" 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-08-10T02:07:51.635269" elapsed="0.026384"/>
</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-08-10T02:07:51.589809" elapsed="0.071899"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.582963" elapsed="0.078876"/>
</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-08-10T02:07:51.672747" 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-08-10T02:07:51.672887" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:51.672606" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.673504" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0370b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.673068" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.673961" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.673683" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.674436" 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-08-10T02:07:51.674138" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.674881" 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-08-10T02:07:51.674612" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.675933" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.675052" elapsed="0.000912"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.676468" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.676120" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.676981" 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-08-10T02:07:51.676663" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.677511" 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-08-10T02:07:51.677172" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.678009" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:51.677700" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.678558" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.678200" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.679070" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0370b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.678754" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:51.672261" elapsed="0.006904"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.679712" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.679313" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.680176" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:51.679934" 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-08-10T02:07:51.687953" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.687655" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.692905" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.693414" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.693517" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.688108" elapsed="0.005435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.693955" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.693704" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.697143" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.694142" elapsed="0.003073"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.699785" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.697311" elapsed="0.002564"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.697285" elapsed="0.002623"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:51.700103" 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-08-10T02:07:51.700448" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.700227" elapsed="0.000294"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.700204" elapsed="0.000349"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.700597" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:51.702894" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.702956" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.687321" elapsed="0.015666"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.705193" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.703620" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.703602" elapsed="0.001657"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.705815" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.705420" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.706369" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.706001" elapsed="0.000446"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.706505" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:51.706685" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.703270" 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-08-10T02:07:51.706866" 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-08-10T02:07:51.686765" elapsed="0.020552"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.715325" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.715027" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.721112" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.721267" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.721397" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.715499" elapsed="0.005925"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.721834" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.721583" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.724033" 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-08-10T02:07:51.722019" elapsed="0.002064"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.725925" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.724152" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.724133" elapsed="0.001863"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.729539" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.729605" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.726134" elapsed="0.003503"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.732128" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.729744" elapsed="0.002461"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.729718" elapsed="0.002520"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.732285" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:51.732580" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.732640" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.714654" elapsed="0.018017"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.735570" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.733458" elapsed="0.002158"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.733433" elapsed="0.002205"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.736178" 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-08-10T02:07:51.735784" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.736742" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.736383" elapsed="0.000386"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.736822" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.736998" 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-08-10T02:07:51.732970" 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-08-10T02:07:51.737240" 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-08-10T02:07:51.714013" elapsed="0.023704"/>
</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-08-10T02:07:51.668971" elapsed="0.068801"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.662021" elapsed="0.075860"/>
</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-08-10T02:07:51.748875" 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-08-10T02:07:51.749017" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:51.748731" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.749636" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3684f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.749200" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.750091" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.749815" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.750588" 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-08-10T02:07:51.750268" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.751034" 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-08-10T02:07:51.750765" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.751917" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.751207" elapsed="0.000741"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.752459" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.752106" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.752975" 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-08-10T02:07:51.752657" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.753509" 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-08-10T02:07:51.753168" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.754013" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:51.753703" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.754556" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.754207" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.755070" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3684f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.754753" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:51.748396" elapsed="0.006771"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.755725" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.755321" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.756148" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:51.755907" 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-08-10T02:07:51.763999" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.763695" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.769630" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.770134" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.770262" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.764154" elapsed="0.006147"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.770929" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.770572" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.774705" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.771190" 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-08-10T02:07:51.777315" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.774874" elapsed="0.002557"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.774848" elapsed="0.002618"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:51.777659" 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-08-10T02:07:51.777970" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.777785" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.777762" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.778121" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:51.780097" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.780142" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.763377" 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-08-10T02:07:51.782303" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.780727" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.780710" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.782941" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.782542" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.783499" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.783127" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.783575" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.783752" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.780398" elapsed="0.003378"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.783929" 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-08-10T02:07:51.762796" elapsed="0.021597"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.792193" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.791898" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.798769" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.798956" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.799055" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.792363" elapsed="0.006718"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.799511" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.799239" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.801733" 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-08-10T02:07:51.799698" elapsed="0.002085"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.803795" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.801851" elapsed="0.002012"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.801833" elapsed="0.002060"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.807866" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.807930" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.804085" elapsed="0.003878"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.810733" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.808069" elapsed="0.002743"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.808044" elapsed="0.002802"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.810892" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:51.811160" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.811220" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.791520" elapsed="0.019723"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.813427" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.811801" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.811783" elapsed="0.001711"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.814032" 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-08-10T02:07:51.813638" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.814599" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.814218" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.814677" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.814853" 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-08-10T02:07:51.811473" elapsed="0.003404"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.815032" 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-08-10T02:07:51.790886" elapsed="0.024612"/>
</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-08-10T02:07:51.744882" elapsed="0.070671"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.738048" elapsed="0.077619"/>
</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-08-10T02:07:51.826633" 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-08-10T02:07:51.826762" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:51.826472" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.827359" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0f90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.826940" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.827853" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.827575" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.828297" 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-08-10T02:07:51.828029" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.828758" 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-08-10T02:07:51.828490" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.829623" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.828932" elapsed="0.000721"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.830131" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.829807" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.830671" 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-08-10T02:07:51.830323" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.831184" 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-08-10T02:07:51.830863" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.831708" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:51.831398" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.832214" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.831900" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.832740" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0f90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.832423" 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-08-10T02:07:51.826129" elapsed="0.006706"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.833376" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.832980" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.833796" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:51.833558" 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-08-10T02:07:51.841779" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.841480" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.847416" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.847893" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.848025" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.841933" elapsed="0.006118"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.848485" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.848207" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.851022" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.848672" elapsed="0.002401"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.853562" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.851140" elapsed="0.002514"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.851122" elapsed="0.002565"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:51.853881" 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-08-10T02:07:51.854190" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.854004" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.853982" elapsed="0.000309"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.854357" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:07:51.856693" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.856755" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.841149" elapsed="0.015638"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.859721" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.857570" elapsed="0.002196"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.857545" elapsed="0.002243"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.860327" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.859933" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.860906" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.860531" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.860981" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:51.861158" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.857081" 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-08-10T02:07:51.861354" 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-08-10T02:07:51.840591" elapsed="0.021214"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.869551" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.869231" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.875195" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.875435" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.875573" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.869705" elapsed="0.005902"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.876182" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.875828" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.879528" 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-08-10T02:07:51.876470" 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-08-10T02:07:51.882184" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.879752" elapsed="0.002500"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.879726" elapsed="0.002556"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.885390" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.885437" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.882504" elapsed="0.002956"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.887234" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.885536" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.885518" elapsed="0.001794"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.887363" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.887557" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.887601" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.868857" elapsed="0.018766"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.889743" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.888164" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.888146" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.890366" 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-08-10T02:07:51.889954" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.890938" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.890580" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.891013" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:51.891192" 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-08-10T02:07:51.887838" elapsed="0.003379"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:51.891388" 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-08-10T02:07:51.868235" elapsed="0.023602"/>
</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-08-10T02:07:51.822886" elapsed="0.069006"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.815854" elapsed="0.076147"/>
</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-08-10T02:07:51.902727" 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-08-10T02:07:51.902856" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:51.902592" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.903460" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda23e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.903034" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.903909" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.903637" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.904373" 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-08-10T02:07:51.904085" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.904813" 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-08-10T02:07:51.904548" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.905861" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.904986" elapsed="0.000906"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.906392" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.906045" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.906983" 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-08-10T02:07:51.906657" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.907517" 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-08-10T02:07:51.907174" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.908017" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:51.907707" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.908542" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.908209" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.909052" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda23e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.908735" 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-08-10T02:07:51.902239" elapsed="0.006908"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.909693" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:51.909292" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.910108" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:51.909870" 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-08-10T02:07:51.917880" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.917585" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.924209" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.924721" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:51.924831" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.918033" elapsed="0.006839"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.925466" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.925093" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.929012" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.925724" elapsed="0.003360"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:51.931648" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:07:51.929178" elapsed="0.002564"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.929153" 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-08-10T02:07:51.932021" 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-08-10T02:07:51.932353" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.932147" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:51.932124" elapsed="0.000335"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.932504" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:51.934794" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:51.934856" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.917253" elapsed="0.017634"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.937172" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.935589" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.935572" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.937794" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.937400" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.938329" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.937980" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.938422" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.938611" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:51.935186" 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-08-10T02:07:51.938792" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:51.916704" elapsed="0.022530"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.947092" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.946777" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:51.956433" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:51.956611" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:51.956723" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.947250" elapsed="0.009498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.957166" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:51.956911" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.959549" 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-08-10T02:07:51.957368" elapsed="0.002253"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.962174" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.959718" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.959691" elapsed="0.002585"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.966267" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:51.966332" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:51.962492" elapsed="0.003895"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:51.968446" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:51.966495" elapsed="0.002007"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.966469" elapsed="0.002057"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:51.968558" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:07:51.968813" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:51.968860" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:51.946364" elapsed="0.022519"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:51.971046" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:51.969451" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:51.969434" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.971685" 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-08-10T02:07:51.971264" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.972223" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:51.971873" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:51.972298" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:51.972496" 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-08-10T02:07:51.969103" 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-08-10T02:07:51.972675" 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-08-10T02:07:51.945715" elapsed="0.027410"/>
</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-08-10T02:07:51.899017" elapsed="0.074163"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.892238" elapsed="0.081064"/>
</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-08-10T02:07:51.984226" 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-08-10T02:07:51.984390" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:51.984081" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:51.984994" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:51.984570" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.985472" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:51.985170" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.985915" 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-08-10T02:07:51.985648" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:51.986368" 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-08-10T02:07:51.986087" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:51.987499" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:51.986543" elapsed="0.000988"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.988025" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.987689" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.988559" 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-08-10T02:07:51.988220" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.989074" 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-08-10T02:07:51.988752" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.989595" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.989264" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.990104" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.989790" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.990704" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:51.990353" 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-08-10T02:07:51.983755" elapsed="0.007052"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.991348" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:51.990954" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:51.991767" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:51.991529" 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-08-10T02:07:51.999559" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:51.999234" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.004970" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.005514" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.005615" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:51.999715" elapsed="0.005926"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.006046" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.005798" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.009224" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.006235" elapsed="0.003062"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.011875" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.009417" elapsed="0.002550"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.009391" 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-08-10T02:07:52.012194" 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-08-10T02:07:52.012528" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.012318" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.012296" elapsed="0.000335"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.012676" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:52.014999" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.015061" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:51.998918" elapsed="0.016174"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.017392" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.015797" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.015779" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.017999" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.017604" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.018550" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.018185" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.018625" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:07:52.018817" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.015463" elapsed="0.003379"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.018996" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:51.998289" elapsed="0.021175"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.027560" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.027241" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.032690" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.032902" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.033050" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.027713" elapsed="0.005373"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.033690" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.033310" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.036774" 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-08-10T02:07:52.033948" elapsed="0.002898"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.039466" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.036942" elapsed="0.002592"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.036916" elapsed="0.002649"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.043609" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.043681" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.039755" elapsed="0.003967"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.046229" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.043845" elapsed="0.002466"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.043818" elapsed="0.002549"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.046417" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:52.046732" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.046795" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.026757" elapsed="0.020069"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.049116" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.047551" elapsed="0.001610"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.047533" elapsed="0.001649"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.049741" 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-08-10T02:07:52.049327" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.050319" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.049965" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.050413" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.050590" 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-08-10T02:07:52.047127" 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-08-10T02:07:52.050797" 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-08-10T02:07:52.026108" elapsed="0.025141"/>
</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-08-10T02:07:51.980475" elapsed="0.070829"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:51.973605" elapsed="0.077830"/>
</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-08-10T02:07:52.062459" 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-08-10T02:07:52.062592" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:52.062306" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.063226" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.062805" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.063705" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.063427" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.064147" 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-08-10T02:07:52.063881" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.064606" 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-08-10T02:07:52.064322" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.065536" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:52.064778" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.066051" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.065723" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.066587" 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-08-10T02:07:52.066249" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.067131" 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-08-10T02:07:52.066804" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.067655" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.067324" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.068167" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.067849" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.068698" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.068378" 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-08-10T02:07:52.061975" elapsed="0.006819"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.069325" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:52.068939" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.069808" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:52.069563" 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-08-10T02:07:52.077604" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.077288" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.083132" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.083645" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.083757" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.077758" elapsed="0.006026"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.084203" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.083944" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.086962" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.084424" 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-08-10T02:07:52.089500" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.087086" elapsed="0.002509"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.087066" elapsed="0.002563"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:52.089827" 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-08-10T02:07:52.090141" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.089955" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.089932" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.090290" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:52.092706" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.092770" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.076974" elapsed="0.015828"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.095776" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.093622" elapsed="0.002200"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.093596" elapsed="0.002248"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.096418" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.095991" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.096961" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.096607" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.097080" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:07:52.097269" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.093125" elapsed="0.004175"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.097480" 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-08-10T02:07:52.076420" elapsed="0.021522"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.106550" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.106218" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.112505" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.112661" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.112766" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.106727" elapsed="0.006068"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.113220" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.112960" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.116404" 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-08-10T02:07:52.113521" elapsed="0.002956"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.119056" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.116574" elapsed="0.002549"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.116548" elapsed="0.002606"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.123274" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.123354" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.119387" elapsed="0.004007"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.125394" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.123483" elapsed="0.001968"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.123463" elapsed="0.002011"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.125507" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.125705" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.125751" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.105834" elapsed="0.019939"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.127967" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.126366" elapsed="0.001648"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.126346" elapsed="0.001689"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.128620" 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-08-10T02:07:52.128188" elapsed="0.000460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.129166" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.128811" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.129242" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:07:52.129455" 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-08-10T02:07:52.125990" 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-08-10T02:07:52.129698" 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-08-10T02:07:52.105183" elapsed="0.024978"/>
</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-08-10T02:07:52.058519" elapsed="0.071698"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.051676" elapsed="0.078672"/>
</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-08-10T02:07:52.141385" 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-08-10T02:07:52.141522" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:52.141227" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.142134" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.141709" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.142645" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.142319" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.143144" 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-08-10T02:07:52.142860" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.143631" 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-08-10T02:07:52.143325" elapsed="0.000333"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.144546" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:52.143812" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.145105" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.144765" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.145655" 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-08-10T02:07:52.145305" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.146181" 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-08-10T02:07:52.145852" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.146716" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:52.146397" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.147276" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:52.146953" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.147819" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.147496" 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-08-10T02:07:52.140889" elapsed="0.007032"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.148482" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:52.148071" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.148912" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:52.148667" 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-08-10T02:07:52.157236" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.156930" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.167622" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.168434" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.168588" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.157423" elapsed="0.011203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.169237" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.168866" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.172964" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.169551" elapsed="0.003488"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.175663" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.173142" elapsed="0.002619"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.173113" 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-08-10T02:07:52.176009" 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-08-10T02:07:52.176355" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.176140" elapsed="0.000291"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.176117" elapsed="0.000346"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.176508" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:52.178833" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.178900" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.156609" elapsed="0.022324"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.181999" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.179746" elapsed="0.002317"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.179720" elapsed="0.002373"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.182936" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.182298" elapsed="0.000676"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.183597" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.183195" elapsed="0.000429"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.183674" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:52.183856" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.179249" elapsed="0.004632"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.184041" 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-08-10T02:07:52.156010" elapsed="0.028531"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.192912" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.192604" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.199490" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.199710" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.199813" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.193069" elapsed="0.006770"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.200260" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.200001" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.202704" 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-08-10T02:07:52.200472" 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-08-10T02:07:52.205252" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.202867" elapsed="0.002457"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.202847" elapsed="0.002533"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.209510" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.209577" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.205579" 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-08-10T02:07:52.211927" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.209719" elapsed="0.002266"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.209692" elapsed="0.002318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.212044" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.212238" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.212284" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.192200" elapsed="0.020106"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.214552" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.212911" elapsed="0.001687"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.212888" elapsed="0.001732"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.215189" 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-08-10T02:07:52.214783" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.215755" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.215398" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.215832" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:52.216011" 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-08-10T02:07:52.212544" 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-08-10T02:07:52.216196" 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-08-10T02:07:52.191574" elapsed="0.025097"/>
</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-08-10T02:07:52.137553" elapsed="0.079175"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.130628" elapsed="0.086221"/>
</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-08-10T02:07:52.227963" 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-08-10T02:07:52.228112" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:52.227786" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.228745" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0369d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.228297" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.229258" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.228969" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.229740" 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-08-10T02:07:52.229461" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.230203" 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-08-10T02:07:52.229921" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.231291" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:52.230402" elapsed="0.000922"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.231848" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.231507" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.232394" 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-08-10T02:07:52.232046" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.232923" 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-08-10T02:07:52.232593" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.233455" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:07:52.233118" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.233977" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:07:52.233655" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.234517" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0369d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.234174" 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-08-10T02:07:52.227446" elapsed="0.007169"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.235201" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:07:52.234764" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.235648" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:07:52.235406" 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-08-10T02:07:52.243596" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.243272" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.251622" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.252112" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.252287" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.243751" elapsed="0.008563"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.252752" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.252498" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.255306" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.252944" 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-08-10T02:07:52.257188" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.255450" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.255432" elapsed="0.001845"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:52.257434" 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-08-10T02:07:52.257660" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.257525" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.257509" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.257764" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:07:52.259413" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.259458" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.242947" elapsed="0.016534"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.261631" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.260028" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.260010" elapsed="0.001692"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.262241" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.261846" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.262824" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.262446" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.262911" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:52.263090" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.259700" elapsed="0.003414"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.263271" 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-08-10T02:07:52.242303" elapsed="0.021434"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.271498" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.271184" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.278081" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.278253" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.278381" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.271653" elapsed="0.006756"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.278866" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.278574" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.281309" 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-08-10T02:07:52.279057" elapsed="0.002369"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.283265" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.281499" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.281480" elapsed="0.001874"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.286942" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.287008" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.283496" elapsed="0.003543"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.288906" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.287148" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.287122" elapsed="0.001863"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.289026" elapsed="0.000034"/>
</return>
<msg time="2026-08-10T02:07:52.289238" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.289282" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.270773" 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-08-10T02:07:52.291522" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.289886" elapsed="0.001681"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.289868" elapsed="0.001721"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.292137" 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-08-10T02:07:52.291735" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.292727" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.292360" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.292804" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.292982" 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-08-10T02:07:52.289556" 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-08-10T02:07:52.293165" 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-08-10T02:07:52.270145" elapsed="0.023504"/>
</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-08-10T02:07:52.224126" elapsed="0.069579"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.217139" elapsed="0.076675"/>
</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-08-10T02:07:52.305085" 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-08-10T02:07:52.305218" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:52.304950" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.305819" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3964d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.305432" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.306298" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.306013" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.306769" 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-08-10T02:07:52.306500" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.307249" 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-08-10T02:07:52.306962" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.308171" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:52.307443" elapsed="0.000762"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.308718" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.308385" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.309299" 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-08-10T02:07:52.308961" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.309851" 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-08-10T02:07:52.309522" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.310382" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:52.310043" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.310945" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:52.310587" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.311487" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3964d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.311146" 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-08-10T02:07:52.304616" elapsed="0.006970"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.312116" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:52.311733" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.312576" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:52.312297" 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-08-10T02:07:52.320488" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.320157" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.327209" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.327926" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.328068" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.320647" elapsed="0.007455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.328707" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.328353" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.332360" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.328979" elapsed="0.003458"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.335035" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.332534" elapsed="0.002595"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.332507" 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-08-10T02:07:52.335392" 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-08-10T02:07:52.335737" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.335537" elapsed="0.000320"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.335513" elapsed="0.000379"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.335938" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:52.338241" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.338309" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.319833" elapsed="0.018530"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.340852" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.339205" elapsed="0.001701"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.339179" elapsed="0.001749"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.341583" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.341084" elapsed="0.000527"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.342150" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.341775" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.342227" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:52.342428" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.338665" elapsed="0.003789"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.342612" 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-08-10T02:07:52.319259" elapsed="0.023847"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.350966" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.350627" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.356568" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.356840" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.356983" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.351128" elapsed="0.005896"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.357664" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.357249" elapsed="0.000483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.361035" 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-08-10T02:07:52.357934" elapsed="0.003174"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.363584" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.361205" elapsed="0.002430"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.361178" elapsed="0.002479"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.366235" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.366287" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.363797" elapsed="0.002513"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.368126" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.366408" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.366388" elapsed="0.001818"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.368239" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.368450" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.368494" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.350225" elapsed="0.018292"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.370693" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.369102" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.369084" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.371395" 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-08-10T02:07:52.370947" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.371940" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.371587" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.372017" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.372197" 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-08-10T02:07:52.368771" 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-08-10T02:07:52.372405" 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-08-10T02:07:52.349613" elapsed="0.023256"/>
</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-08-10T02:07:52.301287" elapsed="0.071639"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.294032" elapsed="0.079015"/>
</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-08-10T02:07:52.384145" 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-08-10T02:07:52.384322" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:52.383993" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.384978" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.384533" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.385463" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.385161" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.385913" 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-08-10T02:07:52.385644" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.386377" 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-08-10T02:07:52.386090" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.389300" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:52.386555" elapsed="0.002794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.389862" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.389514" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.390405" 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-08-10T02:07:52.390061" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.390950" 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-08-10T02:07:52.390603" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.391490" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:52.391145" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.392011" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:52.391687" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.392552" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.392207" 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-08-10T02:07:52.383654" elapsed="0.009052"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.393248" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:52.392857" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.393690" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:52.393446" 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-08-10T02:07:52.401564" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.401235" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.409540" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.410128" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.410242" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.401719" elapsed="0.008550"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.410704" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.410451" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.414126" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.410894" elapsed="0.003306"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.416789" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.414303" elapsed="0.002581"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.414274" elapsed="0.002645"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:52.417117" 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-08-10T02:07:52.417455" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.417244" elapsed="0.000286"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.417220" elapsed="0.000343"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.417608" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:52.419794" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.419840" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.400912" elapsed="0.018951"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.421995" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.420426" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.420408" elapsed="0.001654"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.422625" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.422207" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.423216" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.422846" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.423296" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.423492" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.420075" 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-08-10T02:07:52.423673" 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-08-10T02:07:52.400321" elapsed="0.023806"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.431917" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.431623" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.437361" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.437517" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.437615" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.432072" elapsed="0.005568"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.438048" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.437799" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.440466" 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-08-10T02:07:52.438233" elapsed="0.002284"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.442359" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.440586" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.440567" elapsed="0.001866"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.445856" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.445921" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.442573" elapsed="0.003379"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.448570" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.446061" elapsed="0.002588"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.446035" elapsed="0.002647"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.448730" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:07:52.448999" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.449060" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.431230" elapsed="0.017861"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.451916" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.449874" elapsed="0.002086"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.449849" elapsed="0.002133"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.452543" 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-08-10T02:07:52.452126" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.453079" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.452731" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.453154" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.453329" 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-08-10T02:07:52.449416" elapsed="0.003955"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.453567" 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-08-10T02:07:52.430607" elapsed="0.023411"/>
</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-08-10T02:07:52.380291" elapsed="0.073782"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.373364" elapsed="0.080824"/>
</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-08-10T02:07:52.465098" 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-08-10T02:07:52.465241" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:52.464961" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.465830" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.465439" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.466281" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.466008" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.466752" 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-08-10T02:07:52.466484" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.467227" 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-08-10T02:07:52.466926" elapsed="0.000327"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.468174" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:52.467425" elapsed="0.000780"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.468716" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.468385" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.469230" 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-08-10T02:07:52.468911" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.469771" 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-08-10T02:07:52.469444" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.470276" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:07:52.469959" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.470804" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:52.470489" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.471345" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.471011" 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-08-10T02:07:52.464632" elapsed="0.006817"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.471975" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:07:52.471596" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.472409" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:07:52.472153" 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-08-10T02:07:52.480247" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.479944" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.486906" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.487527" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.487668" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.480422" elapsed="0.007282"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.488281" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.487927" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.491902" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.488570" elapsed="0.003404"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.494572" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.492070" elapsed="0.002593"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.492045" elapsed="0.002652"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:52.494890" 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-08-10T02:07:52.495260" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.495057" elapsed="0.000301"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.495031" elapsed="0.000351"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.495415" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:07:52.497027" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.497071" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.479628" elapsed="0.017466"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.499245" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.497657" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.497640" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.499879" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.499484" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.500434" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.500066" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.500509" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.500686" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.497312" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.500869" 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-08-10T02:07:52.479054" elapsed="0.022261"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.509128" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.508834" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.516452" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.516644" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.516744" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.509281" elapsed="0.007489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.517179" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.516928" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.519815" 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-08-10T02:07:52.517390" elapsed="0.002497"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.522492" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.519985" elapsed="0.002576"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.519959" elapsed="0.002634"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.526376" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.526442" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.522786" 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-08-10T02:07:52.528547" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.526585" elapsed="0.002019"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.526558" elapsed="0.002070"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.528662" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.528856" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.528900" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.508458" 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-08-10T02:07:52.531115" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.529490" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.529472" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.531750" 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-08-10T02:07:52.531349" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.532288" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.531939" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.532387" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:07:52.532570" 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-08-10T02:07:52.529137" 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-08-10T02:07:52.532751" 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-08-10T02:07:52.507832" elapsed="0.025368"/>
</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-08-10T02:07:52.461380" elapsed="0.071876"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.454495" elapsed="0.078889"/>
</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-08-10T02:07:52.544466" 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-08-10T02:07:52.544595" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:52.544314" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.545171" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368fe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.544774" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.545698" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.545407" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.546153" 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-08-10T02:07:52.545881" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.546621" 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-08-10T02:07:52.546347" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.547634" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:52.546799" elapsed="0.000867"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.548155" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.547821" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.548695" 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-08-10T02:07:52.548368" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.549219" 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-08-10T02:07:52.548889" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.549749" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.549431" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.550263" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.549945" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.550799" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368fe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.550478" 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-08-10T02:07:52.543986" elapsed="0.006911"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.551480" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:07:52.551071" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.552015" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:07:52.551663" elapsed="0.000415"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.559955" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.559659" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.566996" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.567676" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.567819" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.560109" elapsed="0.007790"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.568506" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.568127" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.572150" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.568771" elapsed="0.003454"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.574851" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.572329" elapsed="0.002617"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.572302" elapsed="0.002679"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:52.575233" 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-08-10T02:07:52.575489" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.575349" elapsed="0.000192"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.575318" elapsed="0.000246"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.575596" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:07:52.577254" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.577299" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.559322" elapsed="0.018000"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.579546" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.577900" elapsed="0.001691"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.577883" elapsed="0.001731"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.580165" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.579763" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.580717" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.580368" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.580793" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.580971" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.577563" 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-08-10T02:07:52.581151" 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-08-10T02:07:52.558740" elapsed="0.022882"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.589546" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.589229" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.596214" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.596411" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.596511" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.589699" elapsed="0.006838"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.596946" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.596697" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.599498" 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-08-10T02:07:52.597133" elapsed="0.002519"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.602262" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.599750" elapsed="0.002600"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.599724" elapsed="0.002660"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.606114" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.606179" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.602576" elapsed="0.003635"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.608314" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.606316" elapsed="0.002070"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.606291" elapsed="0.002119"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.608443" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.608636" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.608679" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.588852" elapsed="0.019849"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.610848" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.609243" elapsed="0.001650"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.609224" elapsed="0.001692"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.611491" 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-08-10T02:07:52.611073" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.612028" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.611678" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.612103" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.612280" 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-08-10T02:07:52.608915" elapsed="0.003391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.612479" 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-08-10T02:07:52.588217" elapsed="0.024708"/>
</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-08-10T02:07:52.540642" elapsed="0.072340"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.533621" elapsed="0.079476"/>
</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-08-10T02:07:52.623999" 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-08-10T02:07:52.624136" 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-08-10T02:07:52.623861" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.624721" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.624315" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.625176" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.624901" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.625644" 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-08-10T02:07:52.625369" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.626085" 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-08-10T02:07:52.625817" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.626784" 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-08-10T02:07:52.626259" elapsed="0.000556"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.627314" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.626971" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.628073" 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-08-10T02:07:52.627570" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.628624" 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-08-10T02:07:52.628274" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.629135" 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-08-10T02:07:52.628817" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.629664" 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-08-10T02:07:52.629345" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.630174" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.629858" 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-08-10T02:07:52.623531" elapsed="0.006740"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.630817" 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-08-10T02:07:52.630435" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.631275" 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-08-10T02:07:52.630995" 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-08-10T02:07:52.639019" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.638723" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.644769" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.645254" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.645379" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.639204" elapsed="0.006202"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.645816" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.645564" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.648438" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.646002" elapsed="0.002507"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.651029" elapsed="0.000054"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.648604" elapsed="0.002533"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.648578" elapsed="0.002595"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:52.651387" 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-08-10T02:07:52.651699" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.651512" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.651490" elapsed="0.000357"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.651896" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:07:52.654170" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.654233" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.638408" elapsed="0.015861"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.656995" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.655047" elapsed="0.002000"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.655023" elapsed="0.002045"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.657686" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.657213" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.658219" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.657872" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.658293" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.658491" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.654587" elapsed="0.003929"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.658669" 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-08-10T02:07:52.637839" elapsed="0.021291"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.666886" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.666592" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.672777" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.672988" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.673122" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.667040" elapsed="0.006117"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.673767" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.673416" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.677088" 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-08-10T02:07:52.674023" elapsed="0.003137"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.679750" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.677256" elapsed="0.002563"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.677230" elapsed="0.002619"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.683468" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.683533" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.680039" elapsed="0.003526"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.686046" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.683672" elapsed="0.002451"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.683647" elapsed="0.002509"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.686203" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:07:52.686499" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.686561" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.666202" elapsed="0.020390"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.689260" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.687461" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.687435" elapsed="0.001894"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.689889" 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-08-10T02:07:52.689491" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.690443" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.690077" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.690520" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.690699" 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-08-10T02:07:52.686888" elapsed="0.003836"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.690877" 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-08-10T02:07:52.665590" elapsed="0.025769"/>
</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-08-10T02:07:52.620235" elapsed="0.071182"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.613378" elapsed="0.078149"/>
</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-08-10T02:07:52.702413" 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-08-10T02:07:52.702541" 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-08-10T02:07:52.702260" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.703119" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.702720" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.703596" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.703302" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.704040" 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-08-10T02:07:52.703773" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.704501" 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-08-10T02:07:52.704214" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.705188" 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-08-10T02:07:52.704676" elapsed="0.000542"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.705717" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.705389" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.706230" 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-08-10T02:07:52.705911" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.706763" 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-08-10T02:07:52.706440" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.707275" 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-08-10T02:07:52.706952" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.707988" 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-08-10T02:07:52.707489" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.708526" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.708188" 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-08-10T02:07:52.701935" elapsed="0.006726"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.709192" 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-08-10T02:07:52.708811" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.709632" 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-08-10T02:07:52.709387" 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-08-10T02:07:52.717425" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.717104" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.723389" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.723872" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.723973" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.717582" elapsed="0.006416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.724431" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.724156" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.726943" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.724618" elapsed="0.002376"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.729078" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.727062" elapsed="0.002107"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.727043" elapsed="0.002158"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:52.729417" 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-08-10T02:07:52.729730" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.729544" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.729522" elapsed="0.000309"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.729876" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:52.732154" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.732216" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.716768" elapsed="0.015479"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.735271" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.733019" elapsed="0.002336"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.732995" elapsed="0.002393"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.736143" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.735592" elapsed="0.000588"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.736733" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.736385" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.736847" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:07:52.737027" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.732562" elapsed="0.004490"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.737206" 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-08-10T02:07:52.716202" elapsed="0.021470"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.745426" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.745112" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.751164" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.751386" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.751485" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.745580" elapsed="0.005929"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.751921" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.751671" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.755109" 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-08-10T02:07:52.752106" 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-08-10T02:07:52.757756" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.755295" elapsed="0.002530"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.755269" elapsed="0.002586"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.761453" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.761517" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.758047" elapsed="0.003501"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.763924" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.761654" elapsed="0.002325"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.761628" elapsed="0.002375"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.764037" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.764228" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.764271" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.744737" elapsed="0.019556"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.766442" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.764852" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.764835" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.767045" 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-08-10T02:07:52.766653" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.767624" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.767247" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.767699" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.767874" 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-08-10T02:07:52.764524" elapsed="0.003374"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.768053" 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-08-10T02:07:52.744110" elapsed="0.024441"/>
</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-08-10T02:07:52.698672" elapsed="0.069935"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.691760" elapsed="0.076956"/>
</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-08-10T02:07:52.779558" 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-08-10T02:07:52.779683" 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-08-10T02:07:52.779421" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.780241" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3970b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.779861" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.780715" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.780439" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.781158" 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-08-10T02:07:52.780892" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.781620" 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-08-10T02:07:52.781350" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.782304" 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-08-10T02:07:52.781792" elapsed="0.000559"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.782830" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.782507" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.783365" 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-08-10T02:07:52.783022" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.783880" 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-08-10T02:07:52.783558" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.784597" 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-08-10T02:07:52.784068" elapsed="0.000578"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.785121" 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-08-10T02:07:52.784801" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.785652" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3970b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.785316" 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-08-10T02:07:52.779046" elapsed="0.006704"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.786278" 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-08-10T02:07:52.785896" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.786716" 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-08-10T02:07:52.786474" 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-08-10T02:07:52.794550" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.794232" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.800964" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.801499" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.801600" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.794705" elapsed="0.006921"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.802036" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.801784" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.804744" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.802222" elapsed="0.002595"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.807432" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.804913" elapsed="0.002612"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.804887" elapsed="0.002672"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:52.807755" 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-08-10T02:07:52.808065" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.807879" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.807857" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.808213" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:07:52.810510" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.810572" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.793919" elapsed="0.016685"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.813234" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.811416" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.811391" elapsed="0.001910"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.813854" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.813461" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.814403" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.814039" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.814478" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.814655" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.810897" elapsed="0.003783"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.814835" 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-08-10T02:07:52.793358" elapsed="0.021942"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.823053" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.822758" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.829448" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.829707" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.829843" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.823219" elapsed="0.006660"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.830471" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.830097" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.833795" 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-08-10T02:07:52.830730" elapsed="0.003136"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.836493" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.833962" elapsed="0.002600"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.833935" elapsed="0.002658"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.840209" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.840272" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.836784" elapsed="0.003521"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.842829" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.840444" elapsed="0.002463"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.840417" elapsed="0.002523"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.842987" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:07:52.843295" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.843393" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.822383" elapsed="0.021044"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.845823" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.844177" elapsed="0.001691"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.844152" elapsed="0.001738"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.846453" 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-08-10T02:07:52.846036" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.846985" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.846639" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.847059" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:52.847248" 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-08-10T02:07:52.843723" 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-08-10T02:07:52.847444" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:52.821757" elapsed="0.026131"/>
</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-08-10T02:07:52.775803" elapsed="0.072139"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.768948" elapsed="0.079106"/>
</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-08-10T02:07:52.858904" 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-08-10T02:07:52.859036" 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-08-10T02:07:52.858766" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.863300" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1490&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.862797" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.863832" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.863550" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.864276" 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-08-10T02:07:52.864008" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.864738" 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-08-10T02:07:52.864470" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.865444" 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-08-10T02:07:52.864912" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.865956" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.865629" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.866479" 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-08-10T02:07:52.866147" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.868785" 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-08-10T02:07:52.866670" elapsed="0.002159"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.869308" 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-08-10T02:07:52.868984" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.869873" 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-08-10T02:07:52.869552" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.870413" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1490&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.870069" 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-08-10T02:07:52.858438" elapsed="0.012076"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.871058" 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-08-10T02:07:52.870662" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.871515" 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-08-10T02:07:52.871250" 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-08-10T02:07:52.879181" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.878888" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.884940" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.885539" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.885693" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.879365" elapsed="0.006363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.886364" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.885993" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.889903" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.886625" elapsed="0.003350"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.892521" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.890070" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.890044" elapsed="0.002601"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:07:52.892838" 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-08-10T02:07:52.893145" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.892962" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.892939" elapsed="0.000309"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.893293" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:52.895611" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.895673" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.878577" elapsed="0.017128"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.897994" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.896425" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.896407" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.898611" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.898202" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.899142" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.898794" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.899216" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:07:52.899428" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.895996" elapsed="0.003458"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.899609" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:52.878008" elapsed="0.022046"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.907812" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.907517" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.912579" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.912729" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.912825" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.907966" elapsed="0.004885"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.913255" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.913007" elapsed="0.000291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.915669" 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-08-10T02:07:52.913458" elapsed="0.002299"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.918114" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.915826" elapsed="0.002356"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.915807" elapsed="0.002405"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.921827" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.921891" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.918427" elapsed="0.003496"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:07:52.924413" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.922031" elapsed="0.002438"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.922005" elapsed="0.002488"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:52.924527" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.924719" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:52.924762" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.907095" elapsed="0.017690"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.926911" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.925324" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.925307" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.927554" 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-08-10T02:07:52.927125" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.928092" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.927744" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.928167" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:07:52.928365" 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-08-10T02:07:52.924997" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.928550" 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-08-10T02:07:52.906487" elapsed="0.022507"/>
</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-08-10T02:07:52.855173" elapsed="0.073877"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.848312" elapsed="0.080847"/>
</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-08-10T02:07:52.939972" 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-08-10T02:07:52.940103" 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-08-10T02:07:52.939839" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:52.940687" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36ade0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:52.940281" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.941136" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:52.940864" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.941599" 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-08-10T02:07:52.941312" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:52.942039" 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-08-10T02:07:52.941773" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.942806" 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-08-10T02:07:52.942212" elapsed="0.000625"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.943328" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.942989" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.944087" 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-08-10T02:07:52.943584" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.944643" 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-08-10T02:07:52.944286" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.945147" 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-08-10T02:07:52.944835" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.945674" 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-08-10T02:07:52.945357" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.946181" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36ade0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:52.945867" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:52.939513" elapsed="0.006763"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.946817" 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-08-10T02:07:52.946439" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.947231" 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-08-10T02:07:52.946994" 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-08-10T02:07:52.954980" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.954685" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.960654" level="INFO">GET Request : url=http://10.30.170.209: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=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.961132" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:07:52.961231" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.955135" elapsed="0.006123"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.961696" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.961445" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.964228" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.961883" elapsed="0.002411"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:07:52.966844" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-08-10T02:07:52.964418" elapsed="0.002515"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.964392" 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-08-10T02:07:52.967159" 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-08-10T02:07:52.967576" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.967381" elapsed="0.000266"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:07:52.967354" elapsed="0.000325"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.967723" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:07:52.969994" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:07:52.970057" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:07:52.954368" elapsed="0.015720"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.973090" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.970863" elapsed="0.002272"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.970839" elapsed="0.002318"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.973716" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.973300" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.974247" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:52.973902" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:52.974322" elapsed="0.000046"/>
</return>
<msg time="2026-08-10T02:07:52.974518" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:07:52.970404" elapsed="0.004139"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:52.974697" elapsed="0.000378"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:07:52.953802" elapsed="0.021335"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.982863" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:07:52.982572" elapsed="0.000318"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:52.988591" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tvpvgjt67y1hldquq727eits8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:52.988758" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:07:52.988863" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:07:52.983017" elapsed="0.005872"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.989394" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:52.989063" elapsed="0.000395"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:52.992774" 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-08-10T02:07:52.989658" elapsed="0.003188"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:07:52.995424" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:52.992943" elapsed="0.002550"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.992916" elapsed="0.002609"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:07:52.999159" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:07:52.999223" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:07:52.995716" 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-08-10T02:07:53.001377" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:07:52.999429" elapsed="0.002003"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:52.999397" elapsed="0.002059"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:07:53.001491" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:53.001686" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:07:53.001771" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:07:52.982183" elapsed="0.019613"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:07:53.003949" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:07:53.002369" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:07:53.002350" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.004586" 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-08-10T02:07:53.004164" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.005123" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:07:53.004773" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:07:53.005199" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:07:53.005393" 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-08-10T02:07:53.002020" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:07:53.005575" 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-08-10T02:07:52.981583" elapsed="0.024443"/>
</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-08-10T02:07:52.936236" elapsed="0.069847"/>
</kw>
<status status="PASS" start="2026-08-10T02:07:52.929426" elapsed="0.076769"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:07:53.007176" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:07:53.007097" elapsed="0.000145"/>
</kw>
<doc>Test suite for Stats Manager flows collection</doc>
<status status="PASS" start="2026-08-10T02:07:15.068356" elapsed="37.938919"/>
</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-08-10T02:07:53.060583" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ee4d5f90&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-08-10T02:07:53.060241" elapsed="0.000501"/>
</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-08-10T02:07:53.078016" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:07:53.079070" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:07:53 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":56896,"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":"16","active-flows":1,"packets-matched":"16"},"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":"16","byte-count":"1272","duration":{"second":37,"nanosecond":178000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:53.079619" 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-08-10T02:07:53.064701" elapsed="0.014981"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.085139" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":56896,"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":"16","active-flows":1,"packets-matched":"16"},"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":"16","byte-count":"1272","duration":{"second":37,"nanosecond":178000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:07:52.436Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"e6:e8:e1:56:0a:70","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":37,"nanosecond":394000000},"bytes":{"transmitted":"1491","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:be:88:67:c4:4b","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":37,"nanosecond":388000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"56:84:95:0e:74:b0","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":37,"nanosecond":394000000},"bytes":{"transmitted":"1491","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:07:52.453Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:53.080038" elapsed="0.005990"/>
</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-08-10T02:07:53.086399" elapsed="0.003391"/>
</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-08-10T02:07:53.089946" elapsed="0.002273"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:07:53.064587" elapsed="0.027673"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:07:53.062736" elapsed="0.029558"/>
</for>
<arg>${1}</arg>
<doc>Check all switches and stats in operational inventory</doc>
<status status="PASS" start="2026-08-10T02:07:53.061423" elapsed="0.030949"/>
</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-08-10T02:07:53.060892" elapsed="0.031529"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:07:53.094964" 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-08-10T02:07:53.092572" elapsed="0.002449"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:07:53.128729" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=37.843s, table=0, n_packets=16, n_bytes=1272, 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-08-10T02:07:53.095174" elapsed="0.033615"/>
</kw>
<doc>Initiate tcp connection with controller</doc>
<status status="PASS" start="2026-08-10T02:07:53.060025" elapsed="0.068821"/>
</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-08-10T02:07:53.129802" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:53.129551" 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-08-10T02:07:53.133192" 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-08-10T02:07:53.133346" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:53.133056" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:53.133933" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:53.133532" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:53.134419" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:53.134115" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:53.134866" 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-08-10T02:07:53.134598" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:53.135310" 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-08-10T02:07:53.135043" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:53.136288" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:53.135535" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.136817" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.136495" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.137323" 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-08-10T02:07:53.137011" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.137845" 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-08-10T02:07:53.137535" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.138352" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.138036" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.138855" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.138550" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.139389" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.139051" 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-08-10T02:07:53.132722" elapsed="0.006765"/>
</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-08-10T02:07:53.143802" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfff0fe0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:53.143447" 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-08-10T02:07:53.143978" elapsed="0.000270"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:53.144417" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:53.144805" 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-08-10T02:07:53.145197" elapsed="0.000557"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:53.146181" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecb41a30&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-08-10T02:07:53.145911" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:53.146374" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:53.147244" 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-08-10T02:07:53.146774" elapsed="0.000538"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:53.147879" 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-08-10T02:07:53.147489" elapsed="0.000421"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:53.197554" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:53.197687" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:53.197925" 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-08-10T02:07:53.148043" elapsed="0.049942"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.202826" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:53.198394" elapsed="0.004529"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfff1df0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfff1df0&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-08-10T02:07:53.143046" elapsed="0.060005"/>
</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-08-10T02:07:53.139642" elapsed="0.063525"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-08-10T02:07:53.129423" elapsed="0.073822"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.204371" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:53.203848" elapsed="0.000587"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:53.209257" 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-08-10T02:07:53.209466" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:53.209067" elapsed="0.000489"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:53.210321" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368ea0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:53.209769" elapsed="0.000615"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:53.210985" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:53.210598" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:53.211687" 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-08-10T02:07:53.211233" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:53.212302" 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-08-10T02:07:53.211935" elapsed="0.000394"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:53.213247" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:53.212497" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.213784" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.213459" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.214293" 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-08-10T02:07:53.213981" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.214818" 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-08-10T02:07:53.214504" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.215312" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.215011" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.215843" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.215536" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.216366" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368ea0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.216038" 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-08-10T02:07:53.208598" elapsed="0.007866"/>
</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-08-10T02:07:53.220733" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecbed8f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:53.220398" elapsed="0.000363"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:07:53.220905" 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-08-10T02:07:53.221320" 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-08-10T02:07:53.221722" 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-08-10T02:07:53.222109" elapsed="0.000348"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:53.222872" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbee0c0&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-08-10T02:07:53.222608" 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-08-10T02:07:53.223043" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:53.223808" 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-08-10T02:07:53.223457" elapsed="0.000411"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:53.224457" 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-08-10T02:07:53.224050" elapsed="0.000437"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:53.698986" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:53.699164" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:53.699499" 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-08-10T02:07:53.224618" elapsed="0.474948"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.704703" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:53.700082" elapsed="0.004719"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec368ea0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec368ea0&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-08-10T02:07:53.219991" elapsed="0.484950"/>
</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-08-10T02:07:53.216613" elapsed="0.488450"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-08-10T02:07:53.203557" elapsed="0.501588"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.706282" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:53.705727" elapsed="0.000691"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:53.712055" 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-08-10T02:07:53.712273" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:53.711848" elapsed="0.000466"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:53.713127" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036cf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:53.712553" elapsed="0.000613"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:53.713794" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:53.713402" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:53.714437" 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-08-10T02:07:53.714040" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:53.715057" 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-08-10T02:07:53.714686" elapsed="0.000407"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:53.716202" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:53.715299" elapsed="0.000949"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.717031" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.716484" elapsed="0.000589"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.717557" 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-08-10T02:07:53.717226" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.718062" 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-08-10T02:07:53.717746" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.718580" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.718254" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.719140" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.718832" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:53.719734" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036cf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:53.719362" 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-08-10T02:07:53.711286" elapsed="0.008569"/>
</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-08-10T02:07:53.724078" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfff1ad0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:53.723720" elapsed="0.000386"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:07:53.724250" 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-08-10T02:07:53.724703" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:53.725090" 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-08-10T02:07:53.725499" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:53.726253" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecba89f0&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-08-10T02:07:53.725989" elapsed="0.000290"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:53.726442" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:53.727188" 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-08-10T02:07:53.726837" elapsed="0.000410"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:53.727806" 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-08-10T02:07:53.727406" elapsed="0.000437"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:54.200121" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:54.200293" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:54.200623" 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-08-10T02:07:53.727978" elapsed="0.472708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.205857" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:54.201144" elapsed="0.004812"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec036cf0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec036cf0&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-08-10T02:07:53.723359" elapsed="0.482737"/>
</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-08-10T02:07:53.720003" elapsed="0.486359"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-08-10T02:07:53.705431" elapsed="0.501030"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.207604" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:54.207007" 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-08-10T02:07:54.212184" 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-08-10T02:07:54.212369" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:54.212016" elapsed="0.000384"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:54.213001" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:54.212556" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:54.213498" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:54.213189" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:54.213954" 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-08-10T02:07:54.213680" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:54.214449" 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-08-10T02:07:54.214151" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:54.215296" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:54.214629" elapsed="0.000698"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.215840" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:54.215510" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.216473" 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-08-10T02:07:54.216035" elapsed="0.000482"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.216997" 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-08-10T02:07:54.216676" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.217733" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:54.217192" elapsed="0.000589"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.218252" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:54.217935" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.218794" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:54.218469" 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-08-10T02:07:54.211631" elapsed="0.007262"/>
</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-08-10T02:07:54.223197" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecbed8a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:54.222845" 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-08-10T02:07:54.223398" 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-08-10T02:07:54.223827" 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-08-10T02:07:54.224243" elapsed="0.000275"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:54.224668" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:54.225547" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec36af70&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-08-10T02:07:54.225173" elapsed="0.000414"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:54.225793" elapsed="0.000350"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:54.226975" 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-08-10T02:07:54.226442" elapsed="0.000624"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:54.227887" 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-08-10T02:07:54.227274" elapsed="0.000657"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:54.701241" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:54.701475" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:54.701782" 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-08-10T02:07:54.228158" elapsed="0.473689"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.706991" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:54.702320" elapsed="0.004771"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec394860&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec394860&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-08-10T02:07:54.222478" elapsed="0.484752"/>
</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-08-10T02:07:54.219043" elapsed="0.488349"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-08-10T02:07:54.206717" elapsed="0.500761"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.708670" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:54.708019" 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-08-10T02:07:54.713830" 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-08-10T02:07:54.714053" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:54.713627" elapsed="0.000466"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:54.714923" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3290&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:54.714303" elapsed="0.000659"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:54.715590" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:54.715173" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:54.716217" 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-08-10T02:07:54.715841" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:54.716930" 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-08-10T02:07:54.716545" elapsed="0.000490"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:54.717986" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:54.717250" elapsed="0.000767"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.718527" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:54.718180" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.719024" 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-08-10T02:07:54.718721" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.719548" 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-08-10T02:07:54.719215" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.720239" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:54.719739" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.720769" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:54.720461" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:54.721268" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3290&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:54.720964" 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-08-10T02:07:54.713103" elapsed="0.008279"/>
</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-08-10T02:07:54.725650" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfff0ef0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:54.725281" 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-08-10T02:07:54.725823" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:54.726240" 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-08-10T02:07:54.726647" 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-08-10T02:07:54.727038" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:54.727812" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec36b560&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-08-10T02:07:54.727547" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:54.727983" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:54.728781" 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-08-10T02:07:54.728387" elapsed="0.000457"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:54.729409" 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-08-10T02:07:54.728989" elapsed="0.000451"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:55.202130" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:55.202485" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:55.202798" 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-08-10T02:07:54.729570" elapsed="0.473291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.207967" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:55.203319" elapsed="0.004749"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfda3290&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfda3290&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-08-10T02:07:54.724921" elapsed="0.483283"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-08-10T02:07:54.721531" elapsed="0.486796"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-08-10T02:07:54.707729" elapsed="0.500719"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.209598" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:55.208999" 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-08-10T02:07:55.218096" 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-08-10T02:07:55.218274" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:55.217940" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:55.218918" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0d60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:55.218479" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:55.219400" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:55.219100" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:55.219844" 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-08-10T02:07:55.219577" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:55.220289" 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-08-10T02:07:55.220022" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:55.221195" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:55.220481" elapsed="0.000745"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.221734" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:55.221405" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.222233" 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-08-10T02:07:55.221929" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.222749" 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-08-10T02:07:55.222440" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.223455" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:55.222939" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.223958" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:55.223653" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.224474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0d60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:55.224153" 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-08-10T02:07:55.217570" elapsed="0.007000"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-08-10T02:07:55.228862" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3958f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:55.228463" 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-08-10T02:07:55.229036" elapsed="0.000270"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:55.229476" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:55.229902" 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-08-10T02:07:55.230301" elapsed="0.000360"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:55.231083" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec394b80&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-08-10T02:07:55.230814" 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-08-10T02:07:55.231257" elapsed="0.000266"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:55.232047" 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-08-10T02:07:55.231673" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:55.232667" 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-08-10T02:07:55.232254" elapsed="0.000443"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:55.703180" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:55.703402" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:55.703694" 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-08-10T02:07:55.232839" elapsed="0.470917"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.708876" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:55.704201" elapsed="0.004775"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfda0d60&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfda0d60&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-08-10T02:07:55.228093" elapsed="0.481090"/>
</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-08-10T02:07:55.224717" elapsed="0.484591"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-08-10T02:07:55.208688" elapsed="0.500733"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.710536" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:55.709949" elapsed="0.000685"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:55.715629" 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-08-10T02:07:55.715811" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:55.715480" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:55.716527" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe10d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:55.716056" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:55.716991" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:55.716708" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:55.717489" 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-08-10T02:07:55.717187" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:55.717934" 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-08-10T02:07:55.717667" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:55.718889" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:55.718110" elapsed="0.000810"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.719459" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:55.719086" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.719966" 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-08-10T02:07:55.719660" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.722234" 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-08-10T02:07:55.720157" elapsed="0.002121"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.722759" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:55.722452" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.723298" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:55.722955" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:55.723833" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe10d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:55.723517" 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-08-10T02:07:55.715095" elapsed="0.008838"/>
</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-08-10T02:07:55.728293" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfda21b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:55.727924" elapsed="0.000398"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:07:55.728491" 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-08-10T02:07:55.728917" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:55.729386" 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-08-10T02:07:55.729787" elapsed="0.000356"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:55.730590" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda0a40&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-08-10T02:07:55.730296" 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-08-10T02:07:55.730765" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:55.731582" 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-08-10T02:07:55.731164" elapsed="0.000545"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:55.732278" 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-08-10T02:07:55.731857" elapsed="0.000452"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:56.204154" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:56.204380" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:56.204673" 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-08-10T02:07:55.732463" elapsed="0.472273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.209809" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:56.205185" elapsed="0.004724"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecbe10d0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecbe10d0&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-08-10T02:07:55.727542" elapsed="0.482505"/>
</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-08-10T02:07:55.724081" elapsed="0.486087"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-08-10T02:07:55.709662" elapsed="0.500586"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.211409" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:56.210811" 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-08-10T02:07:56.216566" 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-08-10T02:07:56.216720" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:56.216421" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:56.217382" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395030&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:56.216900" elapsed="0.000513"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:56.217850" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:56.217567" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:56.218297" 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-08-10T02:07:56.218026" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:56.218762" 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-08-10T02:07:56.218493" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:56.219744" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:56.218940" elapsed="0.000836"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.220509" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:56.219939" elapsed="0.000614"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.221020" 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-08-10T02:07:56.220707" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.221633" 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-08-10T02:07:56.221270" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.222128" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:56.221826" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.222656" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:56.222346" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.223162" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395030&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:56.222851" 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-08-10T02:07:56.216049" elapsed="0.007211"/>
</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-08-10T02:07:56.227524" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfda3380&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:56.227143" 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-08-10T02:07:56.227697" 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-08-10T02:07:56.228113" elapsed="0.000253"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:56.228513" 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-08-10T02:07:56.228901" elapsed="0.000334"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:56.229701" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda18a0&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-08-10T02:07:56.229427" elapsed="0.000301"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:56.229873" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:56.230674" 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-08-10T02:07:56.230260" elapsed="0.000480"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:56.231299" 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-08-10T02:07:56.230883" elapsed="0.000462"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:56.704855" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:56.705161" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:56.705489" 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-08-10T02:07:56.231476" elapsed="0.474078"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.710646" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:56.706054" elapsed="0.004692"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec395030&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec395030&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-08-10T02:07:56.226781" elapsed="0.484103"/>
</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-08-10T02:07:56.223424" elapsed="0.487583"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-08-10T02:07:56.210521" elapsed="0.500568"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.712224" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:56.711654" elapsed="0.000672"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:56.716949" 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-08-10T02:07:56.717111" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:56.716802" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:56.717775" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034b80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:56.717293" elapsed="0.000516"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:56.718246" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:56.717962" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:56.718714" 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-08-10T02:07:56.718443" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:56.719161" 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-08-10T02:07:56.718891" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:56.720313" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:56.719360" elapsed="0.001003"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.720854" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:56.720526" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.721378" 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-08-10T02:07:56.721050" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.721912" 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-08-10T02:07:56.721573" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.722425" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:56.722105" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.722928" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:56.722622" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:56.723445" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034b80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:56.723124" 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-08-10T02:07:56.716445" 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-08-10T02:07:56.727785" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec395da0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:56.727427" elapsed="0.000386"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:07:56.727958" 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-08-10T02:07:56.728396" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:56.728821" 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-08-10T02:07:56.729219" elapsed="0.000353"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:56.730024" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda14e0&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-08-10T02:07:56.729749" 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-08-10T02:07:56.730197" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:56.730994" 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-08-10T02:07:56.730606" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:56.731678" 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-08-10T02:07:56.731224" elapsed="0.000485"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:57.205845" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:57.206034" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:57.206282" 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-08-10T02:07:56.731842" elapsed="0.474533"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.211387" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:57.206810" elapsed="0.004678"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec034b80&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec034b80&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-08-10T02:07:56.727051" elapsed="0.484572"/>
</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-08-10T02:07:56.723692" elapsed="0.488053"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-08-10T02:07:56.711326" elapsed="0.500497"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.212979" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:57.212382" 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-08-10T02:07:57.218668" 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-08-10T02:07:57.218878" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:57.218438" elapsed="0.000481"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:57.219759" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1300&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:57.219130" elapsed="0.000669"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:57.220472" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:57.220028" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:57.221130" 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-08-10T02:07:57.220754" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:57.221793" 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-08-10T02:07:57.221415" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:57.223204" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:57.222074" elapsed="0.001161"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.223738" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:57.223412" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.224236" 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-08-10T02:07:57.223932" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.224759" 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-08-10T02:07:57.224449" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.225248" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:57.224948" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.225762" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:57.225458" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.226276" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1300&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:57.225955" 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-08-10T02:07:57.217847" elapsed="0.008544"/>
</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-08-10T02:07:57.230660" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfda3470&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:57.230281" 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-08-10T02:07:57.230832" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:57.231244" 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-08-10T02:07:57.231648" 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-08-10T02:07:57.232035" elapsed="0.000348"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:57.232800" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda1710&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-08-10T02:07:57.232536" 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-08-10T02:07:57.232973" elapsed="0.000240"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:57.233760" 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-08-10T02:07:57.233373" elapsed="0.000490"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:57.234463" 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-08-10T02:07:57.234025" elapsed="0.000469"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:57.706986" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:57.707149" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:57.707448" 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-08-10T02:07:57.234623" elapsed="0.472880"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.709974" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:57.707757" elapsed="0.002260"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfff1300&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfff1300&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-08-10T02:07:57.229895" elapsed="0.480187"/>
</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-08-10T02:07:57.226540" elapsed="0.483599"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-08-10T02:07:57.212059" elapsed="0.498117"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.710713" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:57.710462" 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-08-10T02:07:57.714217" 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-08-10T02:07:57.714425" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:57.714071" elapsed="0.000385"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:57.715051" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1260&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:57.714607" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:57.715530" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:57.715231" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:57.715975" 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-08-10T02:07:57.715706" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:57.716433" 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-08-10T02:07:57.716148" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:57.717595" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:57.716610" elapsed="0.001016"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.718113" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:57.717787" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.718699" 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-08-10T02:07:57.718319" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.719202" 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-08-10T02:07:57.718892" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.719710" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:57.719409" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.720204" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:57.719902" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:57.720726" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1260&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:57.720416" 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-08-10T02:07:57.713712" elapsed="0.007112"/>
</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-08-10T02:07:57.725146" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfff07c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:57.724787" 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-08-10T02:07:57.725317" 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-08-10T02:07:57.725751" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:57.726138" 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-08-10T02:07:57.726562" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:57.727316" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfff1030&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-08-10T02:07:57.727049" 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-08-10T02:07:57.727513" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:57.728295" 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-08-10T02:07:57.727903" elapsed="0.000476"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:57.728942" 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-08-10T02:07:57.728525" elapsed="0.000448"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:58.207941" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:58.208144" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:58.208405" 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-08-10T02:07:57.729102" elapsed="0.479366"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.210713" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:58.208704" elapsed="0.002053"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecbe1260&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecbe1260&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-08-10T02:07:57.724393" elapsed="0.486425"/>
</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-08-10T02:07:57.720973" elapsed="0.489899"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-08-10T02:07:57.710311" elapsed="0.500598"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.211414" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:58.211147" 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-08-10T02:07:58.214877" 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-08-10T02:07:58.215019" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:58.214735" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:58.215646" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e5a80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:58.215197" elapsed="0.000478"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:58.216100" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:58.215825" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:58.216566" 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-08-10T02:07:58.216273" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:58.217008" 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-08-10T02:07:58.216740" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:58.218094" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:58.217181" elapsed="0.000944"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.218659" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:58.218283" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.219165" 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-08-10T02:07:58.218860" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.219715" 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-08-10T02:07:58.219401" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.220202" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:58.219905" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.220712" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:58.220409" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.221206" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e5a80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:58.220904" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:07:58.214376" elapsed="0.006925"/>
</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-08-10T02:07:58.225538" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfda1580&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:58.225162" 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-08-10T02:07:58.225708" elapsed="0.000259"/>
</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-08-10T02:07:58.226115" 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-08-10T02:07:58.226554" elapsed="0.000275"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:58.226979" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:58.227743" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda2a20&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-08-10T02:07:58.227478" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:58.227914" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:58.228703" 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-08-10T02:07:58.228301" elapsed="0.000471"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:58.229327" 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-08-10T02:07:58.228915" elapsed="0.000459"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:58.709039" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:58.709195" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:58.709479" 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-08-10T02:07:58.229503" elapsed="0.480038"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.714297" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:58.709908" elapsed="0.004521"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec3e5a80&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec3e5a80&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-08-10T02:07:58.224807" elapsed="0.489750"/>
</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-08-10T02:07:58.221464" elapsed="0.493208"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-08-10T02:07:58.211019" elapsed="0.503794"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.715948" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:58.715384" elapsed="0.000663"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:58.721608" 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-08-10T02:07:58.721738" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:07:58.721471" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:58.722312" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3470&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:58.721915" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:58.722788" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:58.722514" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:58.723248" 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-08-10T02:07:58.722976" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:58.723711" 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-08-10T02:07:58.723442" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:58.724538" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:07:58.723883" elapsed="0.000686"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.725037" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:58.724722" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.725553" 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-08-10T02:07:58.725228" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.726049" 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-08-10T02:07:58.725742" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.726553" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:58.726236" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.727075" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:58.726744" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:58.727591" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3470&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:58.727267" 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-08-10T02:07:58.721117" elapsed="0.006569"/>
</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-08-10T02:07:58.731924" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e4cc0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:58.731579" elapsed="0.000372"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:07:58.732094" 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-08-10T02:07:58.732521" 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-08-10T02:07:58.732900" elapsed="0.000239"/>
</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-08-10T02:07:58.733284" elapsed="0.000346"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:58.734045" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3e6250&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-08-10T02:07:58.733778" 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-08-10T02:07:58.734216" elapsed="0.000258"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:58.735002" 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-08-10T02:07:58.734617" elapsed="0.000495"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:58.735676" 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-08-10T02:07:58.735257" elapsed="0.000450"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:59.210044" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:59.210189" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:59.210471" 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-08-10T02:07:58.735836" elapsed="0.474698"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.215286" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:59.210900" elapsed="0.004518"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfda3470&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfda3470&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-08-10T02:07:58.731203" elapsed="0.484346"/>
</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-08-10T02:07:58.727830" elapsed="0.487834"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-08-10T02:07:58.715065" elapsed="0.500676"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.216840" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:59.216246" 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-08-10T02:07:59.221744" 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-08-10T02:07:59.221872" 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-08-10T02:07:59.221609" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:59.222464" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:59.222049" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:59.222914" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:59.222641" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:59.223386" 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-08-10T02:07:59.223088" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:59.223829" 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-08-10T02:07:59.223560" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:59.224670" 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-08-10T02:07:59.224003" elapsed="0.000698"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.225165" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:59.224853" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.225681" 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-08-10T02:07:59.225375" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.226220" 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-08-10T02:07:59.225906" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.226729" 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-08-10T02:07:59.226427" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.227257" 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-08-10T02:07:59.226923" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.227787" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:59.227477" 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-08-10T02:07:59.221254" elapsed="0.006629"/>
</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-08-10T02:07:59.232088" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e4900&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:59.231745" 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-08-10T02:07:59.232259" 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-08-10T02:07:59.232687" 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-08-10T02:07:59.233068" elapsed="0.000239"/>
</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-08-10T02:07:59.233473" elapsed="0.000326"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:59.234214" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3e4770&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-08-10T02:07:59.233951" elapsed="0.000290"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:07:59.234403" elapsed="0.000393"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:59.235345" 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-08-10T02:07:59.234944" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:59.235957" 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-08-10T02:07:59.235559" elapsed="0.000429"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:07:59.711771" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:07:59.712138" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:07:59.712490" 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-08-10T02:07:59.236117" elapsed="0.476440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.718045" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:59.713079" elapsed="0.005069"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec3e7650&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec3e7650&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-08-10T02:07:59.231392" elapsed="0.486917"/>
</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-08-10T02:07:59.228030" elapsed="0.490469"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-08-10T02:07:59.215961" elapsed="0.502624"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.719874" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:07:59.719150" elapsed="0.000827"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:07:59.725184" 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-08-10T02:07:59.725443" 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-08-10T02:07:59.724973" elapsed="0.000516"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:07:59.726379" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:07:59.725718" elapsed="0.000704"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:59.727077" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:07:59.726666" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:59.727866" 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-08-10T02:07:59.727325" elapsed="0.000579"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:07:59.728509" 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-08-10T02:07:59.728119" elapsed="0.000416"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:07:59.729453" 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-08-10T02:07:59.728686" elapsed="0.000798"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.729990" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:59.729654" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.730513" 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-08-10T02:07:59.730184" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.731012" 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-08-10T02:07:59.730703" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.731535" 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-08-10T02:07:59.731201" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.732032" 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-08-10T02:07:59.731729" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:07:59.732550" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:07:59.732226" 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-08-10T02:07:59.724432" elapsed="0.008212"/>
</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-08-10T02:07:59.736914" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecb89df0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:07:59.736569" elapsed="0.000373"/>
</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-08-10T02:07:59.737087" 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-08-10T02:07:59.737522" 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-08-10T02:07:59.737951" 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-08-10T02:07:59.738368" elapsed="0.000519"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:07:59.739310" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ee532fc0&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-08-10T02:07:59.739043" 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-08-10T02:07:59.739530" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:07:59.740303" 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-08-10T02:07:59.739928" elapsed="0.000457"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:07:59.740923" 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-08-10T02:07:59.740530" elapsed="0.000424"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:00.213058" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:00.213265" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:00.213602" 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-08-10T02:07:59.741083" elapsed="0.472587"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.218983" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:00.214201" elapsed="0.004881"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecb89760&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecb89760&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-08-10T02:07:59.736190" elapsed="0.483034"/>
</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-08-10T02:07:59.732793" elapsed="0.486592"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-08-10T02:07:59.718856" elapsed="0.500615"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.220681" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:00.220084" 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-08-10T02:08:00.226358" 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-08-10T02:08:00.226540" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:00.226191" elapsed="0.000480"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:00.227279" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:00.226830" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:00.227781" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:00.227482" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:00.228224" 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-08-10T02:08:00.227956" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:00.228689" 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-08-10T02:08:00.228415" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:00.229519" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:00.228863" elapsed="0.000687"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.230044" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:00.229712" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.230561" 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-08-10T02:08:00.230237" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.231059" 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-08-10T02:08:00.230751" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.231568" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:00.231248" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.232077" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:00.231775" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.232596" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:00.232273" 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-08-10T02:08:00.225806" elapsed="0.006886"/>
</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-08-10T02:08:00.236949" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9e200&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:00.236619" elapsed="0.000357"/>
</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-08-10T02:08:00.237121" 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-08-10T02:08:00.237566" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:00.237955" 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-08-10T02:08:00.238369" elapsed="0.000527"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:00.239317" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3e4ef0&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-08-10T02:08:00.239050" 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-08-10T02:08:00.239510" elapsed="0.000286"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:00.240316" 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-08-10T02:08:00.239946" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:00.240964" 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-08-10T02:08:00.240584" elapsed="0.000411"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:00.713464" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:00.713668" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:00.713967" 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-08-10T02:08:00.241126" elapsed="0.472910"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.719280" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:00.714613" elapsed="0.004800"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfc9fce0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfc9fce0&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-08-10T02:08:00.236245" elapsed="0.483311"/>
</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-08-10T02:08:00.232840" elapsed="0.486839"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-08-10T02:08:00.219791" elapsed="0.499968"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.720926" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:00.720364" elapsed="0.000662"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:00.726443" 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-08-10T02:08:00.726609" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:00.726277" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:00.727214" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ec50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:00.726792" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:00.727696" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:00.727412" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:00.728161" 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-08-10T02:08:00.727872" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:00.728624" 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-08-10T02:08:00.728353" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:00.729421" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:00.728798" elapsed="0.000654"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.729947" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:00.729617" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.730459" 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-08-10T02:08:00.730139" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.730960" 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-08-10T02:08:00.730652" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.731461" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:00.731148" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.732047" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:00.731713" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:00.732570" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ec50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:00.732244" 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-08-10T02:08:00.725914" elapsed="0.006753"/>
</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-08-10T02:08:00.736912" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9d170&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:00.736581" elapsed="0.000358"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:00.737084" 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-08-10T02:08:00.737524" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:00.737910" 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-08-10T02:08:00.738301" elapsed="0.000528"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:00.739253" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9e7a0&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-08-10T02:08:00.738984" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:00.739446" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:00.740216" 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-08-10T02:08:00.739837" elapsed="0.000439"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:00.740813" 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-08-10T02:08:00.740438" elapsed="0.000405"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:01.214393" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:01.214592" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:01.214873" 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-08-10T02:08:00.740972" elapsed="0.473963"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.220181" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:01.215469" elapsed="0.004893"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfc9ec50&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfc9ec50&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-08-10T02:08:00.736199" elapsed="0.484384"/>
</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-08-10T02:08:00.732817" elapsed="0.487853"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-08-10T02:08:00.720038" elapsed="0.500689"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.221506" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:01.221100" elapsed="0.000471"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:01.226648" 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-08-10T02:08:01.226870" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:01.226442" elapsed="0.000469"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:01.227738" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9cb80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:01.227124" elapsed="0.000654"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:01.228450" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:01.227993" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:01.228903" 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-08-10T02:08:01.228635" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:01.229362" 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-08-10T02:08:01.229077" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:01.230162" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:01.229538" elapsed="0.000655"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.230704" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:01.230371" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.231198" 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-08-10T02:08:01.230895" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.231718" 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-08-10T02:08:01.231404" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.232204" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:01.231908" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.232733" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:01.232428" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.233228" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9cb80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:01.232927" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:01.225917" elapsed="0.007406"/>
</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-08-10T02:08:01.237603" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0d9260&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:01.237253" 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-08-10T02:08:01.237777" elapsed="0.000270"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:01.238200" 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-08-10T02:08:01.238606" 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-08-10T02:08:01.239000" elapsed="0.002368"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:01.241800" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9c1d0&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-08-10T02:08:01.241526" 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-08-10T02:08:01.242017" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:01.242791" 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-08-10T02:08:01.242428" elapsed="0.000425"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:01.243388" 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-08-10T02:08:01.242999" elapsed="0.000420"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:01.715207" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:01.715460" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:01.715770" 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-08-10T02:08:01.243553" elapsed="0.472277"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.720999" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:01.716300" elapsed="0.004796"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfc9cb80&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfc9cb80&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-08-10T02:08:01.236895" elapsed="0.484339"/>
</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-08-10T02:08:01.233491" elapsed="0.487903"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-08-10T02:08:01.220908" elapsed="0.500587"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.722658" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:01.722035" 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-08-10T02:08:01.736322" 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-08-10T02:08:01.736563" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:01.736172" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:01.737209" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9eb60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:01.736753" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:01.737687" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:01.737406" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:01.738128" 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-08-10T02:08:01.737862" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:01.738643" 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-08-10T02:08:01.738299" elapsed="0.000370"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:01.739568" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:01.738818" elapsed="0.000781"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.740085" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:01.739758" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.740637" 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-08-10T02:08:01.740275" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.741137" 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-08-10T02:08:01.740829" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.741788" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:01.741364" elapsed="0.000476"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.742305" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:01.741994" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:01.742840" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9eb60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:01.742521" 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-08-10T02:08:01.735801" elapsed="0.007150"/>
</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-08-10T02:08:01.747522" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9cae0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:01.747147" elapsed="0.000404"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:01.747695" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:01.748112" 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-08-10T02:08:01.748573" 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-08-10T02:08:01.748972" elapsed="0.000624"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:01.750021" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9cef0&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-08-10T02:08:01.749753" 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-08-10T02:08:01.750194" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:01.750994" 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-08-10T02:08:01.750605" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:01.751636" 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-08-10T02:08:01.751202" elapsed="0.000465"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:02.216517" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:02.216899" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:02.217184" 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-08-10T02:08:01.751803" elapsed="0.465443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.222099" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:02.217773" elapsed="0.004389"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfc9eb60&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfc9eb60&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-08-10T02:08:01.746775" elapsed="0.475475"/>
</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-08-10T02:08:01.743103" elapsed="0.479226"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-08-10T02:08:01.721751" elapsed="0.500653"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.223096" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:02.222751" 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-08-10T02:08:02.227988" 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-08-10T02:08:02.228202" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:02.227791" elapsed="0.000453"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:02.229127" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d5d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:02.228482" elapsed="0.000686"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:02.229790" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:02.229408" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:02.230232" 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-08-10T02:08:02.229966" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:02.230690" 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-08-10T02:08:02.230423" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:02.231619" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:02.230863" elapsed="0.000786"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.232134" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:02.231810" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.232647" 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-08-10T02:08:02.232326" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.233160" 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-08-10T02:08:02.232851" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.233671" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:02.233366" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.234168" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:02.233865" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.234723" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d5d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:02.234380" 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-08-10T02:08:02.227280" elapsed="0.007538"/>
</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-08-10T02:08:02.239262" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecb8a1b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:02.238912" 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-08-10T02:08:02.239456" 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-08-10T02:08:02.239872" 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-08-10T02:08:02.240302" elapsed="0.000271"/>
</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-08-10T02:08:02.240724" elapsed="0.000349"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:02.241513" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecb8b970&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-08-10T02:08:02.241223" 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-08-10T02:08:02.241685" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:02.242476" 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-08-10T02:08:02.242072" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:02.243086" 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-08-10T02:08:02.242685" elapsed="0.000432"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:02.717511" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:02.717707" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:02.717972" 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-08-10T02:08:02.243245" elapsed="0.474790"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.723064" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:02.718524" elapsed="0.004639"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfc9d5d0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfc9d5d0&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-08-10T02:08:02.238549" elapsed="0.484754"/>
</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-08-10T02:08:02.234963" elapsed="0.488503"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-08-10T02:08:02.222568" elapsed="0.500980"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.724678" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:02.724080" 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-08-10T02:08:02.729080" 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-08-10T02:08:02.729306" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:02.728921" elapsed="0.000431"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:02.729955" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:02.729506" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:02.730439" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:02.730137" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:02.730887" 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-08-10T02:08:02.730616" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:02.731356" 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-08-10T02:08:02.731068" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:02.732292" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:02.731535" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.732834" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:02.732505" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.733387" 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-08-10T02:08:02.733059" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.734083" 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-08-10T02:08:02.733581" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.734600" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:02.734276" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.735102" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:02.734797" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:02.735634" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:02.735297" 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-08-10T02:08:02.728568" elapsed="0.007163"/>
</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-08-10T02:08:02.739954" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9c770&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:02.739599" 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-08-10T02:08:02.740126" elapsed="0.000281"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:02.740557" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:02.740941" elapsed="0.000272"/>
</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-08-10T02:08:02.741378" elapsed="0.000337"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:02.742131" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9f3d0&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-08-10T02:08:02.741867" 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-08-10T02:08:02.742303" elapsed="0.000259"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:02.743095" 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-08-10T02:08:02.742708" elapsed="0.000487"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:02.743770" 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-08-10T02:08:02.743356" elapsed="0.000445"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:03.219083" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:03.219270" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:03.219599" 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-08-10T02:08:02.743929" elapsed="0.475734"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.224860" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:03.220112" elapsed="0.004847"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfc9e6b0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfc9e6b0&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-08-10T02:08:02.739223" elapsed="0.485875"/>
</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-08-10T02:08:02.735878" elapsed="0.489342"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-08-10T02:08:02.723790" elapsed="0.501536"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.226484" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:03.225888" elapsed="0.000714"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:03.231724" 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-08-10T02:08:03.231894" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:03.231578" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:03.232513" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8aa20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:03.232075" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:03.232976" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:03.232694" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:03.233455" 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-08-10T02:08:03.233152" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:03.233908" 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-08-10T02:08:03.233639" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:03.234688" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:03.234084" elapsed="0.000635"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.235204" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:03.234877" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.235718" 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-08-10T02:08:03.235413" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.236285" 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-08-10T02:08:03.235970" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.236804" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:03.236495" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.237320" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:03.237001" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.238036" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8aa20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:03.237538" 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-08-10T02:08:03.231206" elapsed="0.006928"/>
</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-08-10T02:08:03.242388" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9f5b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:03.242042" elapsed="0.000374"/>
</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-08-10T02:08:03.242562" 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-08-10T02:08:03.242978" 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-08-10T02:08:03.243378" 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-08-10T02:08:03.243772" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:03.244543" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9f3d0&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-08-10T02:08:03.244258" 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-08-10T02:08:03.244716" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:03.245473" 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-08-10T02:08:03.245103" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:03.246049" 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-08-10T02:08:03.245682" elapsed="0.000398"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:03.719771" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:03.719948" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:03.720235" 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-08-10T02:08:03.246208" elapsed="0.474446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.726424" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:03.721118" elapsed="0.005419"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecb8aa20&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecb8aa20&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-08-10T02:08:03.241685" elapsed="0.485016"/>
</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-08-10T02:08:03.238284" elapsed="0.488547"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-08-10T02:08:03.225600" elapsed="0.501313"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.728102" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:03.727495" elapsed="0.000707"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:03.735386" 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-08-10T02:08:03.735554" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:03.735219" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:03.736194" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8b1a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:03.735738" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:03.736678" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:03.736393" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:03.737121" 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-08-10T02:08:03.736854" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:03.737607" 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-08-10T02:08:03.737298" elapsed="0.000335"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:03.738581" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:03.737784" elapsed="0.000829"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.739305" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:03.738775" elapsed="0.000592"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.739836" 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-08-10T02:08:03.739523" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.740361" 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-08-10T02:08:03.740030" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.740894" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:03.740565" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.741416" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:03.741090" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:03.741954" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8b1a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:03.741643" 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-08-10T02:08:03.734847" elapsed="0.007204"/>
</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-08-10T02:08:03.746385" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9c680&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:03.746005" 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-08-10T02:08:03.746562" 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-08-10T02:08:03.746979" 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-08-10T02:08:03.747377" 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-08-10T02:08:03.747813" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:03.748589" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9cbd0&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-08-10T02:08:03.748302" 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-08-10T02:08:03.748763" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:03.749592" 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-08-10T02:08:03.749152" elapsed="0.000508"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:03.750223" 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-08-10T02:08:03.749806" elapsed="0.000449"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:04.220985" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:04.221176" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:04.221508" 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-08-10T02:08:03.750403" elapsed="0.471167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.226704" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:04.222074" elapsed="0.004729"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecb8b1a0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecb8b1a0&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-08-10T02:08:03.745648" elapsed="0.481291"/>
</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-08-10T02:08:03.742202" elapsed="0.484858"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-08-10T02:08:03.727166" elapsed="0.499974"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.228264" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:04.227704" 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-08-10T02:08:04.233193" 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-08-10T02:08:04.233437" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:04.233045" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:04.234062" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3b00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:04.233620" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:04.234548" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:04.234246" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:04.235000" 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-08-10T02:08:04.234727" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:04.235467" 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-08-10T02:08:04.235177" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:04.236356" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:04.235674" elapsed="0.000714"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.237080" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:04.236550" elapsed="0.000573"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.237611" 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-08-10T02:08:04.237279" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.238175" 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-08-10T02:08:04.237844" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.238700" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:04.238389" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.239205" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:04.238897" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.239729" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3b00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:04.239419" 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-08-10T02:08:04.232687" elapsed="0.007142"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-08-10T02:08:04.244068" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecb883b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:04.243733" elapsed="0.000364"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:04.244242" 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-08-10T02:08:04.244678" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:04.245066" 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-08-10T02:08:04.245476" elapsed="0.000381"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:04.246281" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecb8ade0&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-08-10T02:08:04.246012" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:04.246475" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:04.247221" 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-08-10T02:08:04.246866" elapsed="0.000479"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:04.247878" 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-08-10T02:08:04.247494" elapsed="0.000415"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:04.721843" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:04.722004" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:04.722299" 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-08-10T02:08:04.248041" elapsed="0.474353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.727447" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:04.722827" elapsed="0.004720"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfda3b00&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfda3b00&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-08-10T02:08:04.243366" elapsed="0.484317"/>
</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-08-10T02:08:04.239978" elapsed="0.487827"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-08-10T02:08:04.227416" elapsed="0.500469"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.729013" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:04.728453" elapsed="0.000659"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:04.733484" 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-08-10T02:08:04.733649" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:04.733318" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:04.734270" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e53f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:04.733829" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:04.734754" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:04.734469" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:04.735198" 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-08-10T02:08:04.734930" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:04.735666" 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-08-10T02:08:04.735392" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:04.736489" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:04.735845" elapsed="0.000675"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.737008" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:04.736681" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.737530" 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-08-10T02:08:04.737204" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.738269" 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-08-10T02:08:04.737723" elapsed="0.000594"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.738849" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:04.738541" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.739376" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:04.739048" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:04.739889" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e53f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:04.739578" 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-08-10T02:08:04.732963" elapsed="0.007023"/>
</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-08-10T02:08:04.744263" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9e430&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:04.743925" elapsed="0.000366"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:04.744454" 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-08-10T02:08:04.744870" 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-08-10T02:08:04.745252" 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-08-10T02:08:04.745663" elapsed="0.000334"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:04.746460" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9ebb0&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-08-10T02:08:04.746175" 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-08-10T02:08:04.746633" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:04.747394" 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-08-10T02:08:04.747023" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:04.747987" 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-08-10T02:08:04.747602" elapsed="0.000415"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:05.229791" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:05.229993" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:05.230492" 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-08-10T02:08:04.748145" elapsed="0.482422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.236132" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:05.231245" elapsed="0.004987"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec3e53f0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec3e53f0&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-08-10T02:08:04.743565" elapsed="0.492850"/>
</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-08-10T02:08:04.740137" elapsed="0.496409"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-08-10T02:08:04.728128" elapsed="0.508500"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.237927" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:05.237295" 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-08-10T02:08:05.242188" 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-08-10T02:08:05.242409" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:05.242034" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:05.243056" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4e50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:05.242597" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:05.243553" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:05.243245" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:05.244007" 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-08-10T02:08:05.243736" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:05.244473" 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-08-10T02:08:05.244183" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:05.245365" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:05.244652" elapsed="0.000745"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.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-08-10T02:08:05.245568" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.246435" 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-08-10T02:08:05.246098" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.246947" 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-08-10T02:08:05.246629" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.247707" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:05.247137" elapsed="0.000616"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.248213" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:05.247906" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.248768" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4e50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:05.248425" 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-08-10T02:08:05.241641" elapsed="0.007221"/>
</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-08-10T02:08:05.253263" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfda3ec0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:05.252917" elapsed="0.000373"/>
</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-08-10T02:08:05.253455" 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-08-10T02:08:05.253896" 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-08-10T02:08:05.254328" 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-08-10T02:08:05.254750" elapsed="0.000404"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:05.255600" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecb883b0&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-08-10T02:08:05.255310" 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-08-10T02:08:05.255776" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:05.256560" 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-08-10T02:08:05.256168" elapsed="0.000455"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:05.257158" 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-08-10T02:08:05.256769" elapsed="0.000419"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:05.731532" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:05.731748" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:05.732072" 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-08-10T02:08:05.257318" elapsed="0.474816"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.737499" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:05.732681" elapsed="0.004919"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec3e4e50&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec3e4e50&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-08-10T02:08:05.252548" elapsed="0.485193"/>
</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-08-10T02:08:05.249012" elapsed="0.488854"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-08-10T02:08:05.236895" elapsed="0.501052"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.739153" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:05.738586" 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-08-10T02:08:05.743092" 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-08-10T02:08:05.743276" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:05.742939" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:05.743939" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe14e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:05.743477" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:05.744502" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:05.744196" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:05.744957" 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-08-10T02:08:05.744686" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:05.745423" 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-08-10T02:08:05.745134" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:05.746355" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:05.745602" elapsed="0.000785"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.746963" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:05.746584" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.747480" 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-08-10T02:08:05.747158" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.748278" 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-08-10T02:08:05.747672" elapsed="0.000649"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.748835" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:05.748494" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.749350" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:05.749029" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:05.749851" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe14e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:05.749546" 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-08-10T02:08:05.742557" elapsed="0.007393"/>
</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-08-10T02:08:05.754292" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e6480&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:05.753932" 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-08-10T02:08:05.754485" 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-08-10T02:08:05.754940" 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-08-10T02:08:05.755328" 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-08-10T02:08:05.755741" elapsed="0.000349"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:05.756561" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3e7060&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-08-10T02:08:05.756242" elapsed="0.000347"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:05.756736" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:05.757540" 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-08-10T02:08:05.757129" elapsed="0.000475"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:05.758152" 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-08-10T02:08:05.757749" elapsed="0.000498"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:06.231931" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:06.232123" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:06.232477" 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-08-10T02:08:05.758408" elapsed="0.474137"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.237766" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:06.233024" elapsed="0.004841"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecbe14e0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecbe14e0&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-08-10T02:08:05.753553" elapsed="0.484451"/>
</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-08-10T02:08:05.750098" elapsed="0.488028"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-08-10T02:08:05.738211" elapsed="0.499997"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.239409" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:06.238808" 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-08-10T02:08:06.245363" 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-08-10T02:08:06.245539" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:06.245195" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:06.246159" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36af70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:06.245723" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:06.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-08-10T02:08:06.246358" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:06.247129" 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-08-10T02:08:06.246851" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:06.247596" 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-08-10T02:08:06.247305" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:06.248455" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:06.247775" elapsed="0.000712"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.248984" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:06.248651" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.249502" 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-08-10T02:08:06.249177" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.250009" 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-08-10T02:08:06.249699" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.250726" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:06.250197" elapsed="0.000668"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.251354" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:06.251022" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.251862" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36af70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:06.251553" 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-08-10T02:08:06.244827" elapsed="0.007132"/>
</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-08-10T02:08:06.256170" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfda0e00&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:06.255839" 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-08-10T02:08:06.256360" 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-08-10T02:08:06.256786" 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-08-10T02:08:06.257174" 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-08-10T02:08:06.257589" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:06.258363" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9da80&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-08-10T02:08:06.258080" 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-08-10T02:08:06.258540" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:06.259322" 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-08-10T02:08:06.258962" elapsed="0.000440"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:06.259931" 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-08-10T02:08:06.259549" elapsed="0.000412"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:06.732031" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:06.732206" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:06.732531" 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-08-10T02:08:06.260089" elapsed="0.472508"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.737655" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:06.733043" elapsed="0.004712"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec36af70&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec36af70&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-08-10T02:08:06.255473" elapsed="0.482421"/>
</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-08-10T02:08:06.252108" elapsed="0.486030"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-08-10T02:08:06.238499" elapsed="0.499721"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.739477" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:06.738794" elapsed="0.000785"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:06.745447" 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-08-10T02:08:06.745614" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:06.745278" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:06.746253" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368fe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:06.745798" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:06.746739" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:06.746454" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:06.747205" 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-08-10T02:08:06.746915" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:06.747672" 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-08-10T02:08:06.747398" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:06.748641" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:06.747850" elapsed="0.000823"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.749391" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:06.748834" elapsed="0.000600"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.749895" 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-08-10T02:08:06.749586" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.750413" 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-08-10T02:08:06.750085" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.750905" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:06.750603" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.751449" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:06.751123" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:06.751949" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368fe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:06.751644" 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-08-10T02:08:06.744910" elapsed="0.007134"/>
</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-08-10T02:08:06.756321" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec36a610&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:06.755964" 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-08-10T02:08:06.756512" elapsed="0.000269"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:06.756930" 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-08-10T02:08:06.757312" 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-08-10T02:08:06.757717" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:06.758485" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3683b0&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-08-10T02:08:06.758203" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:06.758654" elapsed="0.000240"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:06.759521" 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-08-10T02:08:06.759106" elapsed="0.000483"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:06.760149" 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-08-10T02:08:06.759734" elapsed="0.000446"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:07.233288" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:07.233539" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:07.233841" 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-08-10T02:08:06.760309" elapsed="0.473594"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.239048" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:07.234413" elapsed="0.004733"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec368fe0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec368fe0&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-08-10T02:08:06.755604" elapsed="0.483681"/>
</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-08-10T02:08:06.752192" elapsed="0.487296"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-08-10T02:08:06.738503" elapsed="0.501068"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.240716" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:07.240107" elapsed="0.000709"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:07.246029" 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-08-10T02:08:07.246198" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:07.245882" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:07.246852" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb42930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:07.246396" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:07.247409" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:07.247093" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:07.247864" 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-08-10T02:08:07.247589" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:07.248310" 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-08-10T02:08:07.248040" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:07.250365" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:07.248509" elapsed="0.001889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.250890" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:07.250560" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.251436" 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-08-10T02:08:07.251082" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.251945" 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-08-10T02:08:07.251632" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.252452" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:07.252136" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.252953" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:07.252646" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.253476" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb42930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:07.253146" 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-08-10T02:08:07.245514" elapsed="0.008060"/>
</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-08-10T02:08:07.257851" level="INFO">${req} = &lt;Element 'flow' at 0x7777ee533a60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:07.257486" 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-08-10T02:08:07.258028" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:07.258464" 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-08-10T02:08:07.258855" 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-08-10T02:08:07.259245" elapsed="0.000383"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:07.260047" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbed8f0&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-08-10T02:08:07.259780" 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-08-10T02:08:07.260220" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:07.261026" 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-08-10T02:08:07.260628" elapsed="0.000503"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:07.261727" 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-08-10T02:08:07.261278" elapsed="0.000481"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:07.734643" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:07.734842" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:07.735132" 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-08-10T02:08:07.261889" elapsed="0.473304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.740423" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:07.735717" elapsed="0.004808"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecb42930&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecb42930&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-08-10T02:08:07.257106" elapsed="0.483567"/>
</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-08-10T02:08:07.253723" elapsed="0.487090"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-08-10T02:08:07.239821" elapsed="0.501077"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.742023" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:07.741461" elapsed="0.000663"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:07.747140" 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-08-10T02:08:07.747309" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:07.746995" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:07.747984" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0680&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:07.747509" elapsed="0.000504"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:07.748470" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:07.748168" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:07.748922" 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-08-10T02:08:07.748651" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:07.749388" 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-08-10T02:08:07.749099" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:07.750590" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:07.749567" elapsed="0.001056"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.751113" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:07.750784" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.751724" 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-08-10T02:08:07.751382" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.752232" 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-08-10T02:08:07.751920" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.752742" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:07.752442" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.753242" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:07.752937" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:07.753800" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0680&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:07.753456" 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-08-10T02:08:07.746636" elapsed="0.007270"/>
</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-08-10T02:08:07.758233" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecbe0cc0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:07.757871" 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-08-10T02:08:07.758423" 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-08-10T02:08:07.758931" elapsed="0.000268"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:07.759375" elapsed="0.000291"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:07.759825" elapsed="0.000348"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:07.760621" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbe0b30&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-08-10T02:08:07.760328" 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-08-10T02:08:07.760798" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:07.761615" 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-08-10T02:08:07.761191" elapsed="0.000493"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:07.762261" 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-08-10T02:08:07.761832" elapsed="0.000460"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:08.235104" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:08.235463" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:08.235750" 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-08-10T02:08:07.762450" elapsed="0.473363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.240897" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:08.236274" elapsed="0.004721"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecbe0680&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecbe0680&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-08-10T02:08:07.757468" elapsed="0.483664"/>
</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-08-10T02:08:07.754057" elapsed="0.487199"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-08-10T02:08:07.741138" elapsed="0.500233"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.242516" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:08.241912" 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-08-10T02:08:08.248482" 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-08-10T02:08:08.248713" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:08.248256" elapsed="0.000509"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:08.249625" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8bce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:08.248993" elapsed="0.000676"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:08.250322" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:08.249930" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:08.251019" 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-08-10T02:08:08.250595" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:08.251660" 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-08-10T02:08:08.251263" elapsed="0.000433"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:08.253083" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:08.251942" elapsed="0.001172"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.253626" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:08.253277" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.254127" 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-08-10T02:08:08.253821" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.254645" 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-08-10T02:08:08.254317" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.255137" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:08.254840" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.255652" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:08.255347" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.256167" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8bce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:08.255862" 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-08-10T02:08:08.247738" elapsed="0.008525"/>
</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-08-10T02:08:08.260563" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecbee1b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:08.260191" elapsed="0.000399"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:08.260740" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:08.261157" elapsed="0.000253"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:08.261604" elapsed="0.000291"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:08.262047" elapsed="0.000356"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:08.262826" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecb892b0&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-08-10T02:08:08.262558" 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-08-10T02:08:08.263001" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:08.263812" 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-08-10T02:08:08.263413" elapsed="0.000492"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:08.264493" 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-08-10T02:08:08.264055" elapsed="0.000469"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:08.736026" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:08.736236" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:08.736547" 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-08-10T02:08:08.264655" elapsed="0.471953"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.741591" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:08.737030" elapsed="0.004660"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecb8bce0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecb8bce0&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-08-10T02:08:08.259802" elapsed="0.482021"/>
</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-08-10T02:08:08.256439" elapsed="0.485507"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-08-10T02:08:08.241622" elapsed="0.500405"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.743153" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:08.742592" elapsed="0.000661"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:08.748777" 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-08-10T02:08:08.748979" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:08.748574" elapsed="0.000446"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:08.749871" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7ec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:08.749232" elapsed="0.000680"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:08.750544" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:08.750128" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:08.751165" 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-08-10T02:08:08.750792" elapsed="0.000409"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:08.751810" 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-08-10T02:08:08.751434" elapsed="0.000413"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:08.753246" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:08.752057" elapsed="0.001220"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.753782" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:08.753453" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.754286" 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-08-10T02:08:08.753976" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.754806" 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-08-10T02:08:08.754496" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.755294" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:08.754995" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.755811" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:08.755504" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:08.756323" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7ec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:08.756003" 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-08-10T02:08:08.747995" elapsed="0.008442"/>
</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-08-10T02:08:08.760675" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecbe25c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:08.760303" elapsed="0.000399"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:08.760845" 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-08-10T02:08:08.761255" 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-08-10T02:08:08.761657" 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-08-10T02:08:08.762045" elapsed="0.000361"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:08.762828" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbecd10&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-08-10T02:08:08.762557" 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-08-10T02:08:08.763000" elapsed="0.000240"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:08.763789" 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-08-10T02:08:08.763401" elapsed="0.000490"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:08.764528" 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-08-10T02:08:08.764037" elapsed="0.000522"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:09.237101" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:09.237259" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:09.237560" 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-08-10T02:08:08.764691" elapsed="0.472929"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.241870" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:09.238002" elapsed="0.003932"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec3e7ec0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec3e7ec0&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-08-10T02:08:08.759914" elapsed="0.482120"/>
</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-08-10T02:08:08.756585" elapsed="0.485534"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-08-10T02:08:08.742268" elapsed="0.499902"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.242890" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:09.242532" 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-08-10T02:08:09.247853" 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-08-10T02:08:09.248048" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:09.247652" elapsed="0.000437"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:09.248909" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e68e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:09.248312" elapsed="0.000627"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:09.249407" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:09.249092" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:09.249860" 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-08-10T02:08:09.249587" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:09.250321" 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-08-10T02:08:09.250034" elapsed="0.000333"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:09.251440" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:09.250519" elapsed="0.000953"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.251959" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:09.251631" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.252564" 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-08-10T02:08:09.252197" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.253082" 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-08-10T02:08:09.252763" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.253621" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:09.253290" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.254131" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:09.253819" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.254721" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e68e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:09.254355" 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-08-10T02:08:09.247142" 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-08-10T02:08:09.259144" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e76a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:09.258778" 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-08-10T02:08:09.259317" 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-08-10T02:08:09.259765" 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-08-10T02:08:09.260155" elapsed="0.000292"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:09.260601" elapsed="0.000340"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:09.261382" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3e70b0&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-08-10T02:08:09.261092" elapsed="0.000324"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:09.261566" elapsed="0.000252"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:09.262365" 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-08-10T02:08:09.261964" elapsed="0.000480"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:09.263014" 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-08-10T02:08:09.262592" elapsed="0.000453"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:09.738051" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:09.738326" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:09.738651" 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-08-10T02:08:09.263174" elapsed="0.475539"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.744047" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:09.739125" elapsed="0.005023"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec3e68e0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec3e68e0&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-08-10T02:08:09.258410" elapsed="0.485873"/>
</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-08-10T02:08:09.254977" elapsed="0.489463"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-08-10T02:08:09.242321" elapsed="0.502200"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.745697" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:09.745102" elapsed="0.000659"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:09.750625" 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-08-10T02:08:09.750829" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:09.750424" elapsed="0.000446"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:09.751720" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:09.751078" elapsed="0.000683"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:09.752380" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:09.751972" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:09.753040" 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-08-10T02:08:09.752665" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:09.753683" 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-08-10T02:08:09.753286" elapsed="0.000432"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:09.754655" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:09.753866" elapsed="0.000821"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.755174" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:09.754851" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.755690" 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-08-10T02:08:09.755387" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.756183" 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-08-10T02:08:09.755878" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.756698" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:09.756388" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.757193" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:09.756891" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:09.757708" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:09.757404" 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-08-10T02:08:09.749917" elapsed="0.007886"/>
</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-08-10T02:08:09.762037" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec369940&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:09.761676" 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-08-10T02:08:09.762208" 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-08-10T02:08:09.762639" 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-08-10T02:08:09.763059" elapsed="0.000403"/>
</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-08-10T02:08:09.763615" elapsed="0.000340"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:09.764393" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9dfd0&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-08-10T02:08:09.764108" 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-08-10T02:08:09.764567" elapsed="0.000271"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:09.765407" 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-08-10T02:08:09.764986" elapsed="0.000491"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:09.766046" 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-08-10T02:08:09.765623" elapsed="0.000453"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:10.239403" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:10.239607" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:10.239861" 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-08-10T02:08:09.766207" elapsed="0.473716"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.245090" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:10.240409" elapsed="0.004783"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfc9fce0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfc9fce0&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-08-10T02:08:09.761304" elapsed="0.484025"/>
</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-08-10T02:08:09.757949" elapsed="0.487542"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-08-10T02:08:09.744812" elapsed="0.500867"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.246818" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:10.246212" 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-08-10T02:08:10.251999" 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-08-10T02:08:10.252160" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:10.251853" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:10.252821" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff3ab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:10.252358" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:10.253305" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:10.253023" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:10.253776" 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-08-10T02:08:10.253502" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:10.254223" 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-08-10T02:08:10.253954" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:10.255211" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:10.254414" elapsed="0.000829"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.255748" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:10.255421" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.256250" 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-08-10T02:08:10.255942" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.256777" 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-08-10T02:08:10.256460" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.257316" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:10.257012" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.257837" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:10.257531" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.258353" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff3ab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:10.258032" 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-08-10T02:08:10.251495" elapsed="0.006957"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-08-10T02:08:10.262971" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfff1850&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:10.262606" elapsed="0.000393"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:10.263144" elapsed="0.000281"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:10.263574" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:10.263960" 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-08-10T02:08:10.264368" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:10.265134" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec369710&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-08-10T02:08:10.264853" 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-08-10T02:08:10.265305" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:10.266131" 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-08-10T02:08:10.265712" elapsed="0.000527"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:10.266833" 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-08-10T02:08:10.266407" elapsed="0.000457"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:10.740120" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:10.740311" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:10.740617" 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-08-10T02:08:10.266993" elapsed="0.473687"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.745878" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:10.741211" elapsed="0.004730"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfff3ab0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfff3ab0&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-08-10T02:08:10.262229" elapsed="0.483805"/>
</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-08-10T02:08:10.258601" elapsed="0.487510"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-08-10T02:08:10.245923" elapsed="0.500239"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.746880" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:10.746530" elapsed="0.000413"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:10.751772" 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-08-10T02:08:10.751987" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:10.751572" elapsed="0.000456"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:10.752881" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d95d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:10.752239" elapsed="0.000681"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:10.753680" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:10.753215" elapsed="0.000513"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:10.754204" 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-08-10T02:08:10.753934" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:10.754667" 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-08-10T02:08:10.754398" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:10.755658" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:10.754841" elapsed="0.000849"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.756392" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:10.755849" elapsed="0.000642"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.756958" 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-08-10T02:08:10.756646" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.757516" 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-08-10T02:08:10.757172" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.758014" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:10.757709" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.758529" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:10.758206" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:10.759038" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d95d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:10.758723" 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-08-10T02:08:10.751060" elapsed="0.008077"/>
</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-08-10T02:08:10.765682" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e6bb0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:10.764771" elapsed="0.000983"/>
</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-08-10T02:08:10.765965" 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-08-10T02:08:10.766396" 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-08-10T02:08:10.766783" 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-08-10T02:08:10.767169" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:10.767950" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3964d0&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-08-10T02:08:10.767677" 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-08-10T02:08:10.768123" elapsed="0.000257"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:10.768929" 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-08-10T02:08:10.768527" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:10.769627" 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-08-10T02:08:10.769161" elapsed="0.000498"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:11.241049" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:11.241429" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:11.241735" 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-08-10T02:08:10.769790" elapsed="0.472009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.246816" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:11.242248" elapsed="0.004665"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec0d95d0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec0d95d0&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-08-10T02:08:10.763937" elapsed="0.483114"/>
</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-08-10T02:08:10.759285" elapsed="0.487887"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-08-10T02:08:10.746324" elapsed="0.500928"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.248450" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:11.247853" 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-08-10T02:08:11.253896" 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-08-10T02:08:11.254106" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:11.253691" elapsed="0.000456"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:11.254979" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1ad0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:11.254380" elapsed="0.000638"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:11.255647" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:11.255230" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:11.256266" 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-08-10T02:08:11.255895" elapsed="0.000407"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:11.256909" 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-08-10T02:08:11.256534" elapsed="0.000411"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:11.258140" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:11.257150" elapsed="0.001021"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.258690" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:11.258354" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.259411" 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-08-10T02:08:11.258888" elapsed="0.000566"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.259919" 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-08-10T02:08:11.259604" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.260425" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:11.260108" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.260924" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:11.260620" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.261464" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1ad0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:11.261117" 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-08-10T02:08:11.253132" elapsed="0.008429"/>
</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-08-10T02:08:11.265855" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfff2f70&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:11.265500" 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-08-10T02:08:11.266028" elapsed="0.000262"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:11.266459" 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-08-10T02:08:11.266881" 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-08-10T02:08:11.267277" elapsed="0.000350"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:11.268041" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbef380&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-08-10T02:08:11.267777" 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-08-10T02:08:11.268213" elapsed="0.000259"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:11.268995" 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-08-10T02:08:11.268619" elapsed="0.000441"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:11.269660" 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-08-10T02:08:11.269203" elapsed="0.000489"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:11.742786" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:11.742976" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:11.743272" 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-08-10T02:08:11.269825" elapsed="0.473538"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.748496" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:11.743842" elapsed="0.004756"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfff1ad0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfff1ad0&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-08-10T02:08:11.265078" elapsed="0.483658"/>
</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-08-10T02:08:11.261709" elapsed="0.487148"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-08-10T02:08:11.247556" elapsed="0.501379"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.750157" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:11.749498" elapsed="0.000768"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:11.758088" 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-08-10T02:08:11.758531" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:11.757771" elapsed="0.000829"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:11.759384" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3970b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:11.758914" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:11.759851" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:11.759570" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:11.760296" 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-08-10T02:08:11.760029" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:11.760761" 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-08-10T02:08:11.760493" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:11.764770" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:11.760937" elapsed="0.003865"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.765306" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:11.764971" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.765855" 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-08-10T02:08:11.765517" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.766372" 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-08-10T02:08:11.766047" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.766864" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:11.766561" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.767376" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:11.767057" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:11.767876" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3970b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:11.767573" 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-08-10T02:08:11.756915" elapsed="0.011057"/>
</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-08-10T02:08:11.772205" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfff2d40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:11.771828" 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-08-10T02:08:11.772411" 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-08-10T02:08:11.772837" 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-08-10T02:08:11.773217" 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-08-10T02:08:11.773620" elapsed="0.000360"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:11.774411" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfff3150&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-08-10T02:08:11.774129" 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-08-10T02:08:11.774583" elapsed="0.000239"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:11.775394" 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-08-10T02:08:11.774966" elapsed="0.000542"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:11.776079" 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-08-10T02:08:11.775654" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:12.243509" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:12.243690" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:12.243964" 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-08-10T02:08:11.776239" elapsed="0.467787"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.248978" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:12.244499" elapsed="0.004580"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec3970b0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec3970b0&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-08-10T02:08:11.771470" elapsed="0.477745"/>
</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-08-10T02:08:11.768118" elapsed="0.481248"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-08-10T02:08:11.749174" elapsed="0.500276"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.250636" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:12.250030" elapsed="0.000707"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:12.255561" 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-08-10T02:08:12.255800" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:12.255358" elapsed="0.000484"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:12.256675" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30b80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:12.256054" elapsed="0.000661"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:12.257314" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:12.256926" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:12.258021" 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-08-10T02:08:12.257586" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:12.258679" 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-08-10T02:08:12.258270" elapsed="0.000447"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:12.259853" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:12.258933" elapsed="0.000951"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.260383" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:12.260042" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.260949" 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-08-10T02:08:12.260640" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.261466" 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-08-10T02:08:12.261139" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.261976" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:12.261656" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.262500" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:12.262171" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.263001" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff30b80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:12.262696" 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-08-10T02:08:12.254856" elapsed="0.008242"/>
</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-08-10T02:08:12.267347" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec395f80&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:12.266984" elapsed="0.000393"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:12.267523" elapsed="0.000270"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:12.267942" elapsed="0.000237"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:12.268326" 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-08-10T02:08:12.268741" elapsed="0.000336"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:12.269510" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec397420&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-08-10T02:08:12.269227" 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-08-10T02:08:12.269681" elapsed="0.000253"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:12.270471" 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-08-10T02:08:12.270077" elapsed="0.000460"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:12.271090" 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-08-10T02:08:12.270679" elapsed="0.000442"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:12.744789" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:12.745074" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:12.745386" 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-08-10T02:08:12.271247" elapsed="0.474205"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.750536" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:12.745899" elapsed="0.004739"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dff30b80&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dff30b80&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-08-10T02:08:12.266629" elapsed="0.484153"/>
</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-08-10T02:08:12.263244" elapsed="0.487634"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-08-10T02:08:12.249686" elapsed="0.501245"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.751643" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:12.751268" 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-08-10T02:08:12.756562" 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-08-10T02:08:12.756771" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:12.756359" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:12.757642" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32160&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:12.757024" elapsed="0.000659"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:12.758328" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:12.757894" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:12.758983" 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-08-10T02:08:12.758600" elapsed="0.000409"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:12.759447" 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-08-10T02:08:12.759162" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:12.761808" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:12.759623" elapsed="0.002217"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.762363" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:12.761999" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.762874" 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-08-10T02:08:12.762560" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.763395" 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-08-10T02:08:12.763067" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.763888" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:12.763587" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.764404" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:12.764082" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:12.764912" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff32160&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:12.764601" 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-08-10T02:08:12.755857" elapsed="0.009151"/>
</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-08-10T02:08:12.769237" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec396110&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:12.768887" 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-08-10T02:08:12.769426" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:12.769849" 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-08-10T02:08:12.770303" 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-08-10T02:08:12.770726" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:12.771493" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3946d0&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-08-10T02:08:12.771207" 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-08-10T02:08:12.771665" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:12.772450" 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-08-10T02:08:12.772054" elapsed="0.000461"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:12.773067" 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-08-10T02:08:12.772660" elapsed="0.000437"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:13.245850" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:13.246032" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:13.246312" 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-08-10T02:08:12.773224" elapsed="0.473228"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.251478" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:13.246917" elapsed="0.004660"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dff32160&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dff32160&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-08-10T02:08:12.768530" elapsed="0.483185"/>
</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-08-10T02:08:12.765154" elapsed="0.486687"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-08-10T02:08:12.751088" elapsed="0.500832"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.253080" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:13.252509" elapsed="0.000672"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:13.257782" 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-08-10T02:08:13.257997" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:13.257636" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:13.258664" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d98f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:13.258181" elapsed="0.000513"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:13.259135" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:13.258849" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:13.259606" 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-08-10T02:08:13.259313" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:13.260057" 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-08-10T02:08:13.259785" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:13.261147" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:13.260236" elapsed="0.000943"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.261686" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:13.261356" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.262193" 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-08-10T02:08:13.261886" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.262762" 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-08-10T02:08:13.262431" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.263257" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:13.262955" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.263781" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:13.263473" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.264287" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d98f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:13.263977" 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-08-10T02:08:13.257266" elapsed="0.007136"/>
</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-08-10T02:08:13.268649" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0d8090&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:13.268282" 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-08-10T02:08:13.268821" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:13.269233" 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-08-10T02:08:13.269631" 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-08-10T02:08:13.270016" elapsed="0.000346"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:13.270816" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0d9b70&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-08-10T02:08:13.270544" 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-08-10T02:08:13.270987" elapsed="0.000240"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:13.271779" 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-08-10T02:08:13.271389" elapsed="0.000488"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:13.272445" 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-08-10T02:08:13.272022" elapsed="0.000454"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:13.747697" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:13.747888" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:13.748170" 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-08-10T02:08:13.272604" elapsed="0.475628"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.753367" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:13.748719" elapsed="0.004753"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec0d98f0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec0d98f0&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-08-10T02:08:13.267925" elapsed="0.485687"/>
</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-08-10T02:08:13.264551" elapsed="0.489182"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-08-10T02:08:13.252158" elapsed="0.501662"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.754989" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:13.754402" elapsed="0.000686"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:13.761262" 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-08-10T02:08:13.761445" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:13.761114" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:13.762071" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db7e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:13.761626" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:13.762557" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:13.762253" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:13.763020" 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-08-10T02:08:13.762745" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:13.763484" 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-08-10T02:08:13.763194" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:13.764584" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:13.763663" elapsed="0.000953"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.765104" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:13.764776" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.765625" 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-08-10T02:08:13.765299" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.766190" 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-08-10T02:08:13.765878" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.766747" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:13.766398" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.767255" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:13.766947" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:13.767777" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db7e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:13.767469" 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-08-10T02:08:13.760755" elapsed="0.007120"/>
</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-08-10T02:08:13.772147" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0d9d50&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:13.771774" 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-08-10T02:08:13.772320" 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-08-10T02:08:13.772751" 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-08-10T02:08:13.773131" 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-08-10T02:08:13.773535" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:13.774276" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0dac50&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-08-10T02:08:13.774015" elapsed="0.000287"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:13.774463" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:13.775271" 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-08-10T02:08:13.774883" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:13.775901" 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-08-10T02:08:13.775497" elapsed="0.000435"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:14.248929" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:14.249245" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:14.249583" 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-08-10T02:08:13.776060" elapsed="0.473588"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.254738" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:14.250096" elapsed="0.004742"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec0db7e0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec0db7e0&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-08-10T02:08:13.771406" elapsed="0.483610"/>
</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-08-10T02:08:13.768024" elapsed="0.487121"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-08-10T02:08:13.754081" elapsed="0.501144"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.256388" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:14.255793" 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-08-10T02:08:14.262149" 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-08-10T02:08:14.262311" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:14.262006" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:14.262977" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:14.262511" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:14.263465" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:14.263162" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:14.263919" 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-08-10T02:08:14.263643" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:14.264393" 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-08-10T02:08:14.264095" elapsed="0.000324"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:14.265552" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:14.264571" elapsed="0.001012"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.266069" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:14.265742" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.266586" 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-08-10T02:08:14.266261" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.267123" 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-08-10T02:08:14.266775" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.267631" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:14.267315" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.268125" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:14.267823" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.268638" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:14.268318" 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-08-10T02:08:14.261649" elapsed="0.007083"/>
</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-08-10T02:08:14.273012" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0da8e0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:14.272649" 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-08-10T02:08:14.273185" 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-08-10T02:08:14.273621" 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-08-10T02:08:14.274056" 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-08-10T02:08:14.274471" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:14.275262" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0daed0&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-08-10T02:08:14.274990" 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-08-10T02:08:14.275455" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:14.276288" 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-08-10T02:08:14.275850" elapsed="0.000526"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:14.276959" 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-08-10T02:08:14.276525" elapsed="0.000464"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:14.750011" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:14.750205" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:14.750534" 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-08-10T02:08:14.277123" elapsed="0.473474"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.755676" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:14.751042" elapsed="0.004734"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec36bab0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec36bab0&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-08-10T02:08:14.272274" elapsed="0.483638"/>
</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-08-10T02:08:14.268879" elapsed="0.487155"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-08-10T02:08:14.255505" elapsed="0.500609"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.757451" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:14.756782" 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-08-10T02:08:14.762468" 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-08-10T02:08:14.762632" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:14.762305" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:14.763290" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:14.762813" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:14.763783" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:14.763500" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:14.764232" 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-08-10T02:08:14.763961" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:14.764699" 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-08-10T02:08:14.764427" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:14.765872" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:14.764875" elapsed="0.001029"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.766414" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:14.766069" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.766920" 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-08-10T02:08:14.766613" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.767474" 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-08-10T02:08:14.767112" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.767969" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:14.767667" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.768488" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:14.768165" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:14.768992" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:14.768687" 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-08-10T02:08:14.761939" elapsed="0.007151"/>
</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-08-10T02:08:14.773372" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0d93a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:14.772994" elapsed="0.000407"/>
</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-08-10T02:08:14.773545" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:14.773956" 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-08-10T02:08:14.774352" 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-08-10T02:08:14.774746" elapsed="0.000337"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:14.775577" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9c7c0&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-08-10T02:08:14.775283" 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-08-10T02:08:14.775752" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:14.776553" 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-08-10T02:08:14.776141" elapsed="0.000519"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:14.777231" 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-08-10T02:08:14.776807" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:15.251545" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:15.251754" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:15.252051" 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-08-10T02:08:14.777410" elapsed="0.474705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.257583" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:15.252607" elapsed="0.005077"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfc9e480&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfc9e480&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-08-10T02:08:14.772639" elapsed="0.485183"/>
</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-08-10T02:08:14.769240" elapsed="0.488704"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-08-10T02:08:14.756490" elapsed="0.501533"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.259148" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:15.258584" 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-08-10T02:08:15.263350" 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-08-10T02:08:15.263546" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:15.263187" elapsed="0.000389"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:15.264184" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4ea0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:15.263732" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:15.264668" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:15.264384" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:15.265110" 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-08-10T02:08:15.264844" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:15.265573" 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-08-10T02:08:15.265284" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:15.266524" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:15.265749" elapsed="0.000807"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.267041" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:15.266715" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.267651" 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-08-10T02:08:15.267294" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.268162" 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-08-10T02:08:15.267849" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.268668" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:15.268369" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.269166" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:15.268862" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.269681" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4ea0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:15.269375" 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-08-10T02:08:15.262817" elapsed="0.006961"/>
</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-08-10T02:08:15.274035" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e6cf0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:15.273679" 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-08-10T02:08:15.274207" 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-08-10T02:08:15.274640" 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-08-10T02:08:15.275023" 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-08-10T02:08:15.275430" elapsed="0.000524"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:15.276405" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecb8a160&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-08-10T02:08:15.276109" 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-08-10T02:08:15.276580" elapsed="0.000251"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:15.277387" 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-08-10T02:08:15.276977" elapsed="0.000477"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:15.278013" 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-08-10T02:08:15.277600" elapsed="0.000444"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:15.752776" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:15.753077" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:15.753441" 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-08-10T02:08:15.278215" elapsed="0.475301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.758038" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:15.753972" elapsed="0.004132"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec3e4ea0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec3e4ea0&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-08-10T02:08:15.273309" elapsed="0.484887"/>
</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-08-10T02:08:15.269926" elapsed="0.488355"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-08-10T02:08:15.258262" elapsed="0.500110"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.759095" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:15.758728" 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-08-10T02:08:15.764188" 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-08-10T02:08:15.764433" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:15.763982" elapsed="0.000501"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:15.765299" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7c40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:15.764696" elapsed="0.000669"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:15.765997" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:15.765593" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:15.766682" 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-08-10T02:08:15.766249" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:15.767329" 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-08-10T02:08:15.766937" elapsed="0.000454"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:15.768659" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:15.767618" elapsed="0.001087"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.769246" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:15.768905" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.769798" 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-08-10T02:08:15.769464" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.770321" 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-08-10T02:08:15.769998" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.770865" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:15.770537" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.771402" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:15.771065" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:15.771964" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7c40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:15.771612" elapsed="0.000397"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:15.763426" elapsed="0.008640"/>
</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-08-10T02:08:15.776598" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0db240&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:15.776222" elapsed="0.000404"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:15.776782" 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-08-10T02:08:15.777206" elapsed="0.000261"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:15.777657" 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-08-10T02:08:15.778071" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:15.778864" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda18a0&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-08-10T02:08:15.778582" 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-08-10T02:08:15.779041" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:15.779885" 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-08-10T02:08:15.779459" elapsed="0.000495"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:15.780533" 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-08-10T02:08:15.780102" elapsed="0.000463"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:16.253728" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:16.253917" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:16.254176" 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-08-10T02:08:15.780697" elapsed="0.473543"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.258499" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:16.254765" elapsed="0.003797"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec3e7c40&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec3e7c40&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-08-10T02:08:15.775854" elapsed="0.482802"/>
</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-08-10T02:08:15.772219" elapsed="0.486517"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-08-10T02:08:15.758540" elapsed="0.500252"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.259529" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:16.259150" 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-08-10T02:08:16.264599" 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-08-10T02:08:16.264818" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:16.264393" elapsed="0.000538"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:16.265777" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe28e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:16.265163" elapsed="0.000656"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:16.266505" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:16.266058" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:16.267164" 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-08-10T02:08:16.266759" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:16.267840" 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-08-10T02:08:16.267446" elapsed="0.000432"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:16.268955" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:16.268160" elapsed="0.000827"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.269510" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:16.269156" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.270019" 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-08-10T02:08:16.269707" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.270568" 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-08-10T02:08:16.270227" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.271070" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:16.270763" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.271607" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:16.271275" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.272142" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe28e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:16.271803" 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-08-10T02:08:16.263835" elapsed="0.008409"/>
</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-08-10T02:08:16.276786" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecbe0360&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:16.276451" elapsed="0.000364"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:16.276963" elapsed="0.000281"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:16.277417" 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-08-10T02:08:16.277836" 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-08-10T02:08:16.278293" elapsed="0.000387"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:16.279136" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbe0540&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-08-10T02:08:16.278856" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:16.279357" elapsed="0.000258"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:16.280159" 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-08-10T02:08:16.279765" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:16.280811" 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-08-10T02:08:16.280386" elapsed="0.000464"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:16.754613" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:16.754797" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:16.755103" 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-08-10T02:08:16.280983" elapsed="0.474182"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.760443" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:16.755653" elapsed="0.004892"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ecbe28e0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ecbe28e0&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-08-10T02:08:16.276057" elapsed="0.484631"/>
</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-08-10T02:08:16.272412" elapsed="0.488398"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-08-10T02:08:16.258967" elapsed="0.501918"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.761605" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:16.761232" 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-08-10T02:08:16.766485" 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-08-10T02:08:16.766709" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:16.766263" elapsed="0.000487"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:16.767578" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:16.766960" elapsed="0.000658"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:16.768255" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:16.767829" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:16.768926" 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-08-10T02:08:16.768526" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:16.769412" 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-08-10T02:08:16.769127" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:16.770274" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:16.769587" elapsed="0.000718"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.770813" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:16.770485" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.771315" 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-08-10T02:08:16.771011" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.771832" 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-08-10T02:08:16.771524" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.772383" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:16.772020" elapsed="0.000464"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.772948" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:16.772637" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:16.773480" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:16.773143" 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-08-10T02:08:16.765773" elapsed="0.007804"/>
</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-08-10T02:08:16.778020" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec36bb00&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:16.777669" elapsed="0.000379"/>
</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-08-10T02:08:16.778193" 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-08-10T02:08:16.778630" 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-08-10T02:08:16.779012" 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-08-10T02:08:16.779419" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:16.780170" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbe36f0&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-08-10T02:08:16.779905" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:16.780371" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:16.781130" 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-08-10T02:08:16.780761" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:16.781751" 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-08-10T02:08:16.781355" elapsed="0.000426"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:17.256205" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:17.256410" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:17.256685" 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-08-10T02:08:16.781910" elapsed="0.474835"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.261654" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:17.257199" elapsed="0.004552"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777ec36bec0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777ec36bec0&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-08-10T02:08:16.777292" elapsed="0.484590"/>
</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-08-10T02:08:16.773725" elapsed="0.488272"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-08-10T02:08:16.761050" elapsed="0.501022"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.263175" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:17.262617" elapsed="0.000656"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:17.267792" 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-08-10T02:08:17.267926" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:17.267650" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:17.268525" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda36a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:17.268104" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:17.268984" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:17.268708" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:17.269445" 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-08-10T02:08:17.269158" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:17.269889" 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-08-10T02:08:17.269621" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:17.270657" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:17.270060" elapsed="0.000628"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.271159" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:17.270842" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.271673" 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-08-10T02:08:17.271367" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.272172" 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-08-10T02:08:17.271863" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.272714" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:17.272378" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.273223" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:17.272908" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.273745" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda36a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:17.273437" 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-08-10T02:08:17.267293" elapsed="0.006548"/>
</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-08-10T02:08:17.278230" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfda0db0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:17.277902" 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-08-10T02:08:17.278419" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:17.278834" 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-08-10T02:08:17.279216" 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-08-10T02:08:17.279622" elapsed="0.000336"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:17.280436" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfff0270&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-08-10T02:08:17.280146" 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-08-10T02:08:17.280638" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:17.281396" 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-08-10T02:08:17.281035" elapsed="0.000423"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:17.281981" 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-08-10T02:08:17.281604" elapsed="0.000407"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:17.756947" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:17.757089" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:17.757322" 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-08-10T02:08:17.282139" elapsed="0.475298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.762219" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:17.757814" elapsed="0.004503"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7777dfda36a0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7777dfda36a0&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-08-10T02:08:17.277544" elapsed="0.484942"/>
</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-08-10T02:08:17.273987" elapsed="0.488616"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-08-10T02:08:17.262295" elapsed="0.500385"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-08-10T02:07:53.129257" elapsed="24.633495"/>
</for>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.763793" level="INFO">Length is 50.</msg>
<msg time="2026-08-10T02:08:17.763965" 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-08-10T02:08:17.763107" elapsed="0.000911"/>
</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-08-10T02:08:17.778532" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:17.781207" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/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,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":48,"packets-matched":"0"},"flow":[{"id":"#UF$TABLE*2-61","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":1,"nanosecond":849000000}},"flags":""},{"id":"#UF$TABLE*2-60","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":349000000}},"flags":""},{"id":"#UF$TABLE*2-27","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":18,"nanosecond":897000000}},"flags":""},{"id":"#UF$TABLE*2-49","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":7,"nanosecond":861000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":362000000}},"flags":""},{"id":"#UF$TABLE*2-26","table_id":2,"priority":10,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":391000000}},"flags":""},{"id":"#UF$TABLE*2-29","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":17,"nanosecond":890000000}},"flags":""},{"id":"#UF$TABLE*2-28","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:ab"}},"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":396000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":9,"nanosecond":866000000}},"flags":""},{"id":"#UF$TABLE*2-23","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":20,"nanosecond":893000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":367000000}},"flags":""},{"id":"#UF$TABLE*2-22","table_id":2,"priority":6,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":393000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":8,"nanosecond":864000000}},"flags":""},{"id":"#UF$TABLE*2-25","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":19,"nanosecond":893000000}},"flags":""},{"id":"#UF$TABLE*2-46","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"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:17.781547" 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-08-10T02:08:17.769097" elapsed="0.012489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.786832" level="INFO">{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":48,"packets-matched":"0"},"flow":[{"id":"#UF$TABLE*2-61","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":1,"nanosecond":849000000}},"flags":""},{"id":"#UF$TABLE*2-60","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":349000000}},"flags":""},{"id":"#UF$TABLE*2-27","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":18,"nanosecond":897000000}},"flags":""},{"id":"#UF$TABLE*2-49","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":7,"nanosecond":861000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":362000000}},"flags":""},{"id":"#UF$TABLE*2-26","table_id":2,"priority":10,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":391000000}},"flags":""},{"id":"#UF$TABLE*2-29","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":17,"nanosecond":890000000}},"flags":""},{"id":"#UF$TABLE*2-28","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:ab"}},"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":396000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":9,"nanosecond":866000000}},"flags":""},{"id":"#UF$TABLE*2-23","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":20,"nanosecond":893000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":367000000}},"flags":""},{"id":"#UF$TABLE*2-22","table_id":2,"priority":6,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":393000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":8,"nanosecond":864000000}},"flags":""},{"id":"#UF$TABLE*2-25","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":19,"nanosecond":893000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":364000000}},"flags":""},{"id":"#UF$TABLE*2-24","table_id":2,"priority":8,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":394000000}},"flags":""},{"id":"#UF$TABLE*2-63","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":0,"nanosecond":845000000}},"flags":""},{"id":"#UF$TABLE*2-41","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":11,"nanosecond":872000000}},"flags":""},{"id":"#UF$TABLE*2-62","table_id":2,"priority":209,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":347000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":378000000}},"flags":""},{"id":"#UF$TABLE*2-43","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":10,"nanosecond":868000000}},"flags":""},{"id":"#UF$TABLE*2-21","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":21,"nanosecond":896000000}},"flags":""},{"id":"#UF$TABLE*2-64","table_id":2,"priority":218,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":345000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":367000000}},"flags":""},{"id":"#UF$TABLE*2-20","table_id":2,"priority":4,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":397000000}},"flags":""},{"id":"#UF$TABLE*2-50","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a987:6000:0/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":363000000}},"flags":""},{"id":"#UF$TABLE*2-19","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":22,"nanosecond":898000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":380000000}},"flags":""},{"id":"#UF$TABLE*2-59","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":2,"nanosecond":850000000}},"flags":""},{"id":"#UF$TABLE*2-37","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":13,"nanosecond":882000000}},"flags":""},{"id":"#UF$TABLE*2-18","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"cookie":"2","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":402000000}},"flags":""},{"id":"#UF$TABLE*2-17","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":23,"nanosecond":453000000}},"flags":""},{"id":"#UF$TABLE*2-39","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":12,"nanosecond":876000000}},"flags":""},{"id":"#UF$TABLE*2-56","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":354000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":383000000}},"flags":""},{"id":"#UF$TABLE*2-55","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":4,"nanosecond":850000000}},"flags":""},{"id":"#UF$TABLE*2-33","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":15,"nanosecond":886000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":384000000}},"flags":""},{"id":"#UF$TABLE*2-58","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"#UF$TABLE*2-35","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":14,"nanosecond":874000000}},"flags":""},{"id":"#UF$TABLE*2-57","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":3,"nanosecond":853000000}},"flags":""},{"id":"#UF$TABLE*2-52","table_id":2,"priority":108,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":359000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":16,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":391000000}},"flags":""},{"id":"#UF$TABLE*2-51","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":6,"nanosecond":860000000}},"flags":""},{"id":"#UF$TABLE*2-54","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-32","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":384000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":5,"nanosecond":857000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":16,"nanosecond":885000000}},"flags":""}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:17.781809" elapsed="0.005440"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:08:17.791953" level="INFO">Item found from container 48 times.</msg>
<msg time="2026-08-10T02:08:17.792270" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":48,"packets-matched":"0"},"flow":[{"id":"#UF$TABLE*2-61","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":1,"nanosecond":849000000}},"flags":""},{"id":"#UF$TABLE*2-60","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":349000000}},"flags":""},{"id":"#UF$TABLE*2-27","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":18,"nanosecond":897000000}},"flags":""},{"id":"#UF$TABLE*2-49","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":7,"nanosecond":861000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":362000000}},"flags":""},{"id":"#UF$TABLE*2-26","table_id":2,"priority":10,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":391000000}},"flags":""},{"id":"#UF$TABLE*2-29","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":17,"nanosecond":890000000}},"flags":""},{"id":"#UF$TABLE*2-28","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:ab"}},"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":396000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":9,"nanosecond":866000000}},"flags":""},{"id":"#UF$TABLE*2-23","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":20,"nanosecond":893000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":367000000}},"flags":""},{"id":"#UF$TABLE*2-22","table_id":2,"priority":6,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":393000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":8,"nanosecond":864000000}},"flags":""},{"id":"#UF$TABLE*2-25","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":19,"nanosecond":893000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":364000000}},"flags":""},{"id":"#UF$TABLE*2-24","table_id":2,"priority":8,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":394000000}},"flags":""},{"id":"#UF$TABLE*2-63","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":0,"nanosecond":845000000}},"flags":""},{"id":"#UF$TABLE*2-41","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":11,"nanosecond":872000000}},"flags":""},{"id":"#UF$TABLE*2-62","table_id":2,"priority":209,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":347000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":378000000}},"flags":""},{"id":"#UF$TABLE*2-43","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":10,"nanosecond":868000000}},"flags":""},{"id":"#UF$TABLE*2-21","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":21,"nanosecond":896000000}},"flags":""},{"id":"#UF$TABLE*2-64","table_id":2,"priority":218,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":345000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":367000000}},"flags":""},{"id":"#UF$TABLE*2-20","table_id":2,"priority":4,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":397000000}},"flags":""},{"id":"#UF$TABLE*2-50","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a987:6000:0/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":363000000}},"flags":""},{"id":"#UF$TABLE*2-19","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":22,"nanosecond":898000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":380000000}},"flags":""},{"id":"#UF$TABLE*2-59","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":2,"nanosecond":850000000}},"flags":""},{"id":"#UF$TABLE*2-37","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":13,"nanosecond":882000000}},"flags":""},{"id":"#UF$TABLE*2-18","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"cookie":"2","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":402000000}},"flags":""},{"id":"#UF$TABLE*2-17","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":23,"nanosecond":453000000}},"flags":""},{"id":"#UF$TABLE*2-39","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":12,"nanosecond":876000000}},"flags":""},{"id":"#UF$TABLE*2-56","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":354000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":383000000}},"flags":""},{"id":"#UF$TABLE*2-55","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":4,"nanosecond":850000000}},"flags":""},{"id":"#UF$TABLE*2-33","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":15,"nanosecond":886000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":384000000}},"flags":""},{"id":"#UF$TABLE*2-58","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"#UF$TABLE*2-35","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":14,"nanosecond":874000000}},"flags":""},{"id":"#UF$TABLE*2-57","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":3,"nanosecond":853000000}},"flags":""},{"id":"#UF$TABLE*2-52","table_id":2,"priority":108,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":359000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":16,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":391000000}},"flags":""},{"id":"#UF$TABLE*2-51","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":6,"nanosecond":860000000}},"flags":""},{"id":"#UF$TABLE*2-54","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-32","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":384000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":5,"nanosecond":857000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":16,"nanosecond":885000000}},"flags":""}]}]}' contains 'priority' 48 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-08-10T02:08:17.787488" elapsed="0.005312">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":48,"packets-matched":"0"},"flow":[{"id":"#UF$TABLE*2-61","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":1,"nanosecond":849000000}},"flags":""},{"id":"#UF$TABLE*2-60","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-coun...
    [ Message content over the limit has been removed. ]
...,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":384000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":5,"nanosecond":857000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":16,"nanosecond":885000000}},"flags":""}]}]}' contains 'priority' 48 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-08-10T02:08:17.768763" elapsed="0.024209">'{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":48,"packets-matched":"0"},"flow":[{"id":"#UF$TABLE*2-61","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":1,"nanosecond":849000000}},"flags":""},{"id":"#UF$TABLE*2-60","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-coun...
    [ Message content over the limit has been removed. ]
...,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":384000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":5,"nanosecond":857000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":16,"nanosecond":885000000}},"flags":""}]}]}' contains 'priority' 48 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-08-10T02:08:19.812542" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:19.815145" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/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,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"flow":[{"id":"#UF$TABLE*2-49","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":10,"nanosecond":886000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":387000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":12,"nanosecond":891000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":392000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":11,"nanosecond":889000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":389000000}},"flags":""},{"id":"#UF$TABLE*2-41","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":14,"nanosecond":897000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":403000000}},"flags":""},{"id":"#UF$TABLE*2-43","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":13,"nanosecond":893000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":392000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":405000000}},"flags":""},{"id":"#UF$TABLE*2-37","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":16,"nanosecond":907000000}},"flags":""},{"id":"#UF$TABLE*2-39","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":15,"nanosecond":901000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":408000000}},"flags":""},{"id":"#UF$TABLE*2-33","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":18,"nanosecond":911000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":409000000}},"flags":""},{"id":"#UF$TABLE*2-35","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":17,"nanosecond":899000000}},"flags... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:19.815520" 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-08-10T02:08:19.800965" elapsed="0.014605"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.821405" level="INFO">{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"},"flow":[{"id":"#UF$TABLE*2-49","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":10,"nanosecond":886000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":387000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":12,"nanosecond":891000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":392000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":11,"nanosecond":889000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":389000000}},"flags":""},{"id":"#UF$TABLE*2-41","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":14,"nanosecond":897000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":403000000}},"flags":""},{"id":"#UF$TABLE*2-43","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":13,"nanosecond":893000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":392000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":405000000}},"flags":""},{"id":"#UF$TABLE*2-37","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":16,"nanosecond":907000000}},"flags":""},{"id":"#UF$TABLE*2-39","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":15,"nanosecond":901000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":408000000}},"flags":""},{"id":"#UF$TABLE*2-33","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":18,"nanosecond":911000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":409000000}},"flags":""},{"id":"#UF$TABLE*2-35","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":17,"nanosecond":899000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":16,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":416000000}},"flags":""},{"id":"#UF$TABLE*2-32","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":409000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":19,"nanosecond":910000000}},"flags":""},{"id":"#UF$TABLE*2-61","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":4,"nanosecond":874000000}},"flags":""},{"id":"#UF$TABLE*2-60","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":374000000}},"flags":""},{"id":"#UF$TABLE*2-27","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":21,"nanosecond":922000000}},"flags":""},{"id":"#UF$TABLE*2-26","table_id":2,"priority":10,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":416000000}},"flags":""},{"id":"#UF$TABLE*2-29","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":20,"nanosecond":915000000}},"flags":""},{"id":"#UF$TABLE*2-28","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:ab"}},"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":421000000}},"flags":""},{"id":"#UF$TABLE*2-23","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":23,"nanosecond":918000000}},"flags":""},{"id":"#UF$TABLE*2-66","table_id":2,"priority":220,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"220","instructions":{"instruction":[{"order":0,"write-metadata":{"metadata-mask":"12","metadata":"10"}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":369000000}},"flags":""},{"id":"#UF$TABLE*2-22","table_id":2,"priority":6,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":24,"nanosecond":418000000}},"flags":""},{"id":"#UF$TABLE*2-25","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":22,"nanosecond":918000000}},"flags":""},{"id":"#UF$TABLE*2-24","table_id":2,"priority":8,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":419000000}},"flags":""},{"id":"#UF$TABLE*2-63","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":3,"nanosecond":870000000}},"flags":""},{"id":"#UF$TABLE*2-62","table_id":2,"priority":209,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":372000000}},"flags":""},{"id":"#UF$TABLE*2-65","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":2,"nanosecond":868000000}},"flags":""},{"id":"#UF$TABLE*2-21","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":24,"nanosecond":921000000}},"flags":""},{"id":"#UF$TABLE*2-64","table_id":2,"priority":218,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":370000000}},"flags":""},{"id":"#UF$TABLE*2-20","table_id":2,"priority":4,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":25,"nanosecond":422000000}},"flags":""},{"id":"#UF$TABLE*2-50","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a987:6000:0/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":388000000}},"flags":""},{"id":"#UF$TABLE*2-19","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":25,"nanosecond":923000000}},"flags":""},{"id":"#UF$TABLE*2-59","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":5,"nanosecond":875000000}},"flags":""},{"id":"#UF$TABLE*2-18","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"cookie":"2","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":26,"nanosecond":427000000}},"flags":""},{"id":"#UF$TABLE*2-17","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":26,"nanosecond":478000000}},"flags":""},{"id":"#UF$TABLE*2-56","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":379000000}},"flags":""},{"id":"#UF$TABLE*2-55","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":7,"nanosecond":875000000}},"flags":""},{"id":"#UF$TABLE*2-58","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":378000000}},"flags":""},{"id":"#UF$TABLE*2-57","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":6,"nanosecond":878000000}},"flags":""},{"id":"#UF$TABLE*2-52","table_id":2,"priority":108,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":384000000}},"flags":""},{"id":"#UF$TABLE*2-51","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":9,"nanosecond":885000000}},"flags":""},{"id":"#UF$TABLE*2-54","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":380000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":8,"nanosecond":882000000}},"flags":""}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:19.815832" elapsed="0.006059"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.826237" 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-08-10T02:08:19.822149" elapsed="0.004265"/>
</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-08-10T02:08:19.800308" elapsed="0.026175"/>
</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-08-10T02:08:17.764411" elapsed="2.062123"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:08:19.833158" 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-08-10T02:08:19.826695" elapsed="0.006522"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:08:19.969176" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=64.581s, table=0, n_packets=18, n_bytes=1412, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x1, duration=26.657s, 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.582s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x24, duration=15.076s, 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.571s, 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.548s, 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.047s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xda, duration=3.549s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=4.049s, 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.078s, 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.588s, 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.070s, 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.566s, 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.551s, 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.595s, 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.101s, 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.553s, 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.053s, 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.558s, 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.057s, 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.557s, 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.054s, 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.064s, 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.563s, 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.061s, 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.054s, 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.559s, 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.567s, 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.065s, 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.568s, 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.068s, 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.571s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=drop
 cookie=0x2b, duration=14.072s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=dec_ttl
 cookie=0x17, duration=17.086s, 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.080s, 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.584s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=TABLE
 cookie=0x14, duration=18.587s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=LOCAL
 cookie=0x13, duration=19.090s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=IN_PORT
 cookie=0x12, duration=19.588s, 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.089s, 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.595s, 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.094s, 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.600s, 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.097s, 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.598s, 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.097s, 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.597s, 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.100s, 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.601s, 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.102s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=drop
 cookie=0x2, duration=26.606s, 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-08-10T02:08:19.833386" elapsed="0.136142"/>
</kw>
<doc>Add all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-08-10T02:07:53.128899" elapsed="26.840824"/>
</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-08-10T02:08:19.981441" 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-08-10T02:08:19.981625" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:19.981253" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:19.982374" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e74c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:19.981835" elapsed="0.000567"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:19.982848" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:19.982560" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:19.983298" 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-08-10T02:08:19.983026" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:19.983760" 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-08-10T02:08:19.983492" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:19.984589" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:19.983935" elapsed="0.000684"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.985130" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:19.984782" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.985658" 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-08-10T02:08:19.985322" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.986251" 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-08-10T02:08:19.985849" elapsed="0.000449"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.986794" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:19.986472" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.987366" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:19.987018" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.987889" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e74c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:19.987568" 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-08-10T02:08:19.980889" elapsed="0.007101"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.988579" 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-08-10T02:08:19.988146" elapsed="0.000463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:19.989010" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:19.988761" 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-08-10T02:08:19.996959" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:19.996636" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.003901" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.004527" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:20.004650" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:19.997166" elapsed="0.007511"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.005123" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.004851" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.008512" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.005310" elapsed="0.003275"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:20.011270" elapsed="0.000052"/>
</return>
<status status="PASS" start="2026-08-10T02:08:20.008700" elapsed="0.002704"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.008665" elapsed="0.002775"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:20.011649" 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-08-10T02:08:20.011961" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.011775" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:20.011752" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.012109" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:20.014481" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:20.014544" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:19.996182" elapsed="0.018394"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.016908" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.015315" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.015297" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.017548" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.017127" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.018134" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.017736" elapsed="0.000429"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.018223" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:08:20.018436" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.014891" elapsed="0.003571"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.018622" 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-08-10T02:08:19.995599" elapsed="0.023496"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.027037" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.026731" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.036228" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.038164" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:20.038514" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.027194" elapsed="0.011348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.039012" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.038704" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.047466" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.039494" elapsed="0.008734"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.050109" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.048300" elapsed="0.001867"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.048281" elapsed="0.001912"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.075846" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:20.075894" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:20.050373" elapsed="0.025544"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:20.077749" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.076001" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.075981" elapsed="0.001849"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:20.077865" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:20.078099" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:20.078152" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:20.026350" elapsed="0.051829"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.080365" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.078775" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.078757" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.080989" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.080584" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.081545" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.081177" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.081621" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.081797" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.078439" elapsed="0.003383"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.082022" 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-08-10T02:08:20.025650" elapsed="0.056850"/>
</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-08-10T02:08:19.977476" elapsed="0.105081"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:19.970241" elapsed="0.112442"/>
</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-08-10T02:08:20.093716" 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-08-10T02:08:20.093869" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:20.093573" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:20.094542" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e610&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:20.094100" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.095009" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:20.094723" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.095471" 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-08-10T02:08:20.095184" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.095910" 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-08-10T02:08:20.095643" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.096694" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:20.096081" elapsed="0.000644"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.097208" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.096877" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.097794" 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-08-10T02:08:20.097468" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.098383" 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-08-10T02:08:20.098030" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.098891" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.098578" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.099420" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.099085" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.099963" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e610&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.099615" 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-08-10T02:08:20.093224" elapsed="0.006836"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.100604" 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-08-10T02:08:20.100207" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.101021" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:20.100783" 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-08-10T02:08:20.109105" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.108801" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.115377" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.115905" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:20.116054" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.109259" elapsed="0.006839"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.116714" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.116359" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.120357" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.116974" elapsed="0.003458"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:20.122982" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:20.120528" elapsed="0.002548"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.120502" elapsed="0.002607"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:20.123309" elapsed="0.000053"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:20.123647" elapsed="0.000072"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.123461" elapsed="0.000306"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:20.123437" elapsed="0.000363"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.123847" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:20.126180" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:20.126255" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:20.108485" elapsed="0.017808"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.128694" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.127107" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.127085" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.129300" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.128907" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.129853" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.129506" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.129928" elapsed="0.000049"/>
</return>
<msg time="2026-08-10T02:08:20.130153" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.126628" 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-08-10T02:08:20.130376" 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-08-10T02:08:20.107885" elapsed="0.022944"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.138646" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.138330" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.148268" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.150927" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:20.151352" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.138799" elapsed="0.012592"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.151970" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.151618" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.157610" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.152232" elapsed="0.006578"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.160732" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.158913" elapsed="0.001869"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.158885" elapsed="0.001919"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.223597" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:20.223663" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:20.160946" elapsed="0.062741"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:20.225675" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.223817" elapsed="0.001919"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.223784" elapsed="0.001979"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:20.225801" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:08:20.226037" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:20.226090" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:20.137928" elapsed="0.088188"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.228393" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.226800" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.226782" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.229069" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.228615" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.229634" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.229260" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.229710" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:20.229890" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.226436" elapsed="0.003480"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.230128" 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-08-10T02:08:20.137306" elapsed="0.093358"/>
</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-08-10T02:08:20.089896" elapsed="0.140825"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:20.082998" elapsed="0.147847"/>
</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-08-10T02:08:20.241818" 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-08-10T02:08:20.242029" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:20.241673" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:20.242717" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee50a750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:20.242247" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.243186" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:20.242899" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.243660" 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-08-10T02:08:20.243387" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.244105" 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-08-10T02:08:20.243836" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.244909" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:20.244280" elapsed="0.000659"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.245444" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.245096" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.246059" 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-08-10T02:08:20.245699" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.246656" 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-08-10T02:08:20.246293" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.247161" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.246849" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.247690" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.247372" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.248203" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee50a750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.247885" 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-08-10T02:08:20.241322" elapsed="0.006978"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.248847" 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-08-10T02:08:20.248465" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.249267" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:20.249027" 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-08-10T02:08:20.257268" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.256957" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.262840" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.263500" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:20.263604" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.257446" elapsed="0.006184"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.264049" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.263793" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.266685" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.264237" elapsed="0.002501"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:20.269250" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:20.266807" elapsed="0.002556"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.266789" elapsed="0.002611"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:20.269599" 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-08-10T02:08:20.269910" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.269723" elapsed="0.000335"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:20.269700" elapsed="0.000404"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.270166" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:20.272472" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:20.272536" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:20.256638" elapsed="0.015930"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.275503" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.273330" elapsed="0.002218"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.273305" elapsed="0.002265"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.276113" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.275718" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.276666" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.276298" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.276742" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.276919" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.272864" 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-08-10T02:08:20.277099" 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-08-10T02:08:20.256061" elapsed="0.021508"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.285421" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.285104" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.300775" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.305312" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:20.306060" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.285578" elapsed="0.020555"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.307209" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.306624" elapsed="0.000688"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.313346" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.307678" elapsed="0.006449"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.316003" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.314210" elapsed="0.001844"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.314189" elapsed="0.001887"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.342511" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:20.342560" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:20.316220" elapsed="0.026363"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:20.344399" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.342664" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.342645" elapsed="0.001834"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:20.344513" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.344709" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:20.344753" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:20.284725" elapsed="0.060051"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.346942" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.345344" elapsed="0.001646"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.345310" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.347610" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.347184" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.348147" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.347798" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.348222" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:20.348417" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.344997" 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-08-10T02:08:20.348599" 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-08-10T02:08:20.284088" elapsed="0.064961"/>
</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-08-10T02:08:20.238062" elapsed="0.111045"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:20.231148" elapsed="0.118078"/>
</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-08-10T02:08:20.363461" 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-08-10T02:08:20.363617" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:20.363286" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:20.364224" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035710&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:20.363807" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.364704" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:20.364422" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.365149" 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-08-10T02:08:20.364881" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.365609" 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-08-10T02:08:20.365323" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.366528" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:20.365783" elapsed="0.000776"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.367048" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.366715" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.367642" 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-08-10T02:08:20.367300" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.368161" 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-08-10T02:08:20.367836" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.368681" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.368369" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.369190" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.368875" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.369718" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035710&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.369400" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:20.362942" elapsed="0.006872"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.370393" 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-08-10T02:08:20.369961" elapsed="0.000463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.370812" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:20.370573" 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-08-10T02:08:20.378849" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.378537" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.387154" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.387716" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:20.387820" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.379019" elapsed="0.008826"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.388468" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.388070" elapsed="0.000463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.392043" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.388730" elapsed="0.003385"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:20.394747" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:08:20.392214" elapsed="0.002628"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.392186" elapsed="0.002691"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:20.395078" 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-08-10T02:08:20.395465" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.395253" elapsed="0.000286"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:20.395229" elapsed="0.000343"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.395617" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:20.397869" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:20.397931" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:20.378165" elapsed="0.019797"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.400506" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.398854" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.398829" elapsed="0.001744"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.401117" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.400720" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.401672" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.401303" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.401748" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.401926" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.398358" elapsed="0.003593"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.402135" 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-08-10T02:08:20.377578" elapsed="0.025064"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.410446" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.410072" elapsed="0.000403"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.420951" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.423676" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:20.424106" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.410609" elapsed="0.013537"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.424795" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.424414" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.431005" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.425073" elapsed="0.006704"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.433604" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.431851" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.431831" elapsed="0.001847"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.458394" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:20.458444" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:20.433819" elapsed="0.024648"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:20.460253" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.458548" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.458529" elapsed="0.001819"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:20.460385" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:20.460586" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:20.460629" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:20.409697" elapsed="0.050955"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.462855" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.461213" elapsed="0.001688"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.461196" elapsed="0.001727"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.463501" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.463074" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.464039" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.463689" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.464114" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:20.464291" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.460878" elapsed="0.003438"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.464492" 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-08-10T02:08:20.409069" elapsed="0.055876"/>
</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-08-10T02:08:20.359576" elapsed="0.105426"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:20.349527" elapsed="0.115596"/>
</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-08-10T02:08:20.476029" 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-08-10T02:08:20.476177" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:20.475887" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:20.476796" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7f60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:20.476380" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.477255" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:20.476976" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.477718" 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-08-10T02:08:20.477449" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.478190" 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-08-10T02:08:20.477892" elapsed="0.000324"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.479045" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:20.478383" elapsed="0.000692"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.479580" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.479230" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.480134" 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-08-10T02:08:20.479813" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.480667" 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-08-10T02:08:20.480326" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.481170" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.480859" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.481700" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.481380" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.482224" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e7f60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.481895" 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-08-10T02:08:20.475557" elapsed="0.006764"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.482867" 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-08-10T02:08:20.482488" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.483280" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:20.483045" 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-08-10T02:08:20.491188" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.490884" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.496722" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.497242" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:20.497370" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.491361" elapsed="0.006037"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.497806" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.497558" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.500324" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.497993" elapsed="0.002401"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:20.502218" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:08:20.500462" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.500444" elapsed="0.001864"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:20.502503" 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-08-10T02:08:20.502728" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.502595" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:20.502579" elapsed="0.000222"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.502833" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:20.504452" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:20.504497" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:20.490567" elapsed="0.013952"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.506656" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.505058" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.505041" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.507260" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.506867" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.507813" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.507464" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.507887" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.508063" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.504731" elapsed="0.003357"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.508241" 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-08-10T02:08:20.489982" elapsed="0.018723"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.516795" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.516420" elapsed="0.000401"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.527081" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.529644" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:20.530057" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.516952" elapsed="0.013142"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.530792" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.530403" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.539095" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.531057" elapsed="0.008825"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.541709" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.539953" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.539934" elapsed="0.001847"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.570858" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:20.570908" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:20.541921" elapsed="0.029012"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:20.572757" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.571019" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.570998" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:20.572873" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:20.573075" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:20.573119" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:20.516029" elapsed="0.057113"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.575367" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.573736" elapsed="0.001678"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.573718" elapsed="0.001718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.576011" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.575588" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.576572" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.576201" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.576647" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:20.576827" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.573393" 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-08-10T02:08:20.577008" 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-08-10T02:08:20.515377" elapsed="0.062108"/>
</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-08-10T02:08:20.472283" elapsed="0.105259"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:20.465431" elapsed="0.112229"/>
</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-08-10T02:08:20.588583" 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-08-10T02:08:20.588738" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:20.588438" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:20.589354" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee530770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:20.588922" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.589819" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:20.589537" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.590311" 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-08-10T02:08:20.589998" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.590777" 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-08-10T02:08:20.590506" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.591626" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:20.590953" elapsed="0.000704"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.592143" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.591812" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.592775" 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-08-10T02:08:20.592441" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.593297" 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-08-10T02:08:20.592969" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.593818" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.593506" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.594362" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.594011" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.594890" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee530770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.594563" 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-08-10T02:08:20.588089" elapsed="0.006901"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.595597" 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-08-10T02:08:20.595138" elapsed="0.000492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.596033" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:20.595783" 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-08-10T02:08:20.603889" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.603583" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.610930" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.611514" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:20.611618" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.604045" elapsed="0.007598"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.612062" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.611805" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.614632" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.612250" elapsed="0.002435"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:20.617282" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-08-10T02:08:20.614757" elapsed="0.002648"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.614737" 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-08-10T02:08:20.617713" 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-08-10T02:08:20.618049" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.617849" elapsed="0.000275"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:20.617825" elapsed="0.000334"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.618225" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:08:20.620694" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:20.620761" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:20.603252" elapsed="0.017543"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.623773" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.621627" elapsed="0.002192"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.621601" elapsed="0.002240"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.624434" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.623986" elapsed="0.000475"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.624975" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.624623" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.625050" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.625227" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.621112" 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-08-10T02:08:20.625422" 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-08-10T02:08:20.602699" elapsed="0.023175"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.633581" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.633263" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.643299" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.647497" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:20.648126" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.633737" elapsed="0.014447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.649125" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.648570" elapsed="0.000654"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.656440" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.649579" 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-08-10T02:08:20.659043" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.657272" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.657253" elapsed="0.001861"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.684743" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:20.684791" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:20.659256" elapsed="0.025558"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:20.686625" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.684894" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.684875" elapsed="0.001831"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:20.686740" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.686937" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:20.686981" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:20.632892" elapsed="0.054112"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.689156" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.687575" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.687556" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.689787" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.689384" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.690370" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.689975" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.690447" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.690625" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.687223" elapsed="0.003427"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.690806" 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-08-10T02:08:20.632265" elapsed="0.058990"/>
</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-08-10T02:08:20.584834" elapsed="0.106477"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:20.577950" elapsed="0.113497"/>
</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-08-10T02:08:20.702478" 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-08-10T02:08:20.702623" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:20.702316" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:20.703219" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:20.702803" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.703696" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:20.703415" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.704137" 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-08-10T02:08:20.703872" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.704593" 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-08-10T02:08:20.704310" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.705490" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:20.704766" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.706001" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.705674" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.706591" 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-08-10T02:08:20.706247" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.707108" 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-08-10T02:08:20.706784" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.707629" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.707298" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.708140" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.707823" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.708670" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.708349" 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-08-10T02:08:20.701941" elapsed="0.006826"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.709290" 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-08-10T02:08:20.708914" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.709724" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:20.709487" 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-08-10T02:08:20.717679" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.717376" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.724611" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.725124" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:20.725225" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.717835" elapsed="0.007416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.725681" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.725428" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.728223" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.725868" 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-08-10T02:08:20.730110" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-08-10T02:08:20.728362" elapsed="0.001849"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.728325" 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-08-10T02:08:20.730431" 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-08-10T02:08:20.730662" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.730526" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:20.730508" elapsed="0.000230"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.730771" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:20.733130" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:20.733197" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:20.717045" elapsed="0.016186"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.735960" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.734056" elapsed="0.001950"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.734030" elapsed="0.001997"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.736585" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.736172" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.737116" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.736771" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.737191" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.737386" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.733569" elapsed="0.003843"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.737566" 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-08-10T02:08:20.716486" elapsed="0.021525"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.745759" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.745461" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.756075" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.758915" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:20.759370" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.745912" elapsed="0.013500"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.760021" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.759648" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.766054" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.760297" elapsed="0.006870"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.768997" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.767240" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.767221" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.793454" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:20.793502" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:20.769210" elapsed="0.024316"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:20.795324" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.793606" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.793587" elapsed="0.001836"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:20.795457" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:20.795654" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:20.795699" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:20.745067" elapsed="0.050654"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.797924" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.796277" elapsed="0.001693"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.796257" elapsed="0.001734"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.798595" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.798140" elapsed="0.000483"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.799132" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.798784" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.799207" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:20.799402" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.795941" elapsed="0.003487"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.799583" 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-08-10T02:08:20.744456" elapsed="0.055576"/>
</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-08-10T02:08:20.698657" elapsed="0.101431"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:20.691735" elapsed="0.108469"/>
</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-08-10T02:08:20.814154" 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-08-10T02:08:20.814348" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:20.814010" elapsed="0.000372"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:20.814981" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:20.814537" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.815456" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:20.815159" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.815898" 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-08-10T02:08:20.815631" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.816351" 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-08-10T02:08:20.816070" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.817286" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:20.816525" elapsed="0.000791"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.817819" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.817489" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.818446" 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-08-10T02:08:20.818075" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.818968" 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-08-10T02:08:20.818642" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.819487" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.819159" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.819997" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.819681" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.820680" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.820189" elapsed="0.000533"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:20.813626" elapsed="0.007153"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.821307" 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-08-10T02:08:20.820927" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.821747" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:20.821508" 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-08-10T02:08:20.829545" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.829217" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.836293" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.836861" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:20.836983" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.829701" elapsed="0.007321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.837648" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.837254" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.841479" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.837923" elapsed="0.003633"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:20.844398" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-08-10T02:08:20.841706" elapsed="0.002793"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.841676" elapsed="0.002860"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:20.844747" 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-08-10T02:08:20.845078" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.844882" elapsed="0.000272"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:20.844858" elapsed="0.000330"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.845236" elapsed="0.000022"/>
</return>
<msg time="2026-08-10T02:08:20.847481" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:20.847527" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:20.828902" elapsed="0.018648"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.849679" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.848095" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.848078" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.850298" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.849893" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.850873" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.850525" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.850947" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:20.851123" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.847767" elapsed="0.003381"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.851304" 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-08-10T02:08:20.828242" elapsed="0.023531"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.859570" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.859249" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.869942" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.872971" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:20.873653" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.859726" elapsed="0.013985"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.875116" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.874069" elapsed="0.001156"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.881304" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.875646" elapsed="0.006459"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.883952" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.882183" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.882163" elapsed="0.001864"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.910618" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:20.910682" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:20.884169" elapsed="0.026538"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:20.912600" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.910801" elapsed="0.001858"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.910780" elapsed="0.001904"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:20.912718" elapsed="0.000036"/>
</return>
<msg time="2026-08-10T02:08:20.912935" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:20.912992" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:20.858877" elapsed="0.054140"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.915279" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.913646" elapsed="0.001680"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.913628" elapsed="0.001738"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.915964" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.915524" elapsed="0.000474"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.916548" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.916163" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.916625" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:20.916807" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.913271" 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-08-10T02:08:20.917000" 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-08-10T02:08:20.858216" elapsed="0.059307"/>
</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-08-10T02:08:20.807316" elapsed="0.110268"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:20.800503" elapsed="0.117216"/>
</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-08-10T02:08:20.928765" 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-08-10T02:08:20.928996" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:20.928621" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:20.929640" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe3e20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:20.929180" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.930103" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:20.929821" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.930617" 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-08-10T02:08:20.930279" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:20.931072" 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-08-10T02:08:20.930795" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:20.932107" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:20.931251" elapsed="0.000888"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.932697" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.932300" elapsed="0.000442"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.933290" 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-08-10T02:08:20.932948" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.933845" 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-08-10T02:08:20.933507" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.934392" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.934038" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.934920" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.934595" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.935512" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe3e20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:20.935143" 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-08-10T02:08:20.928264" elapsed="0.007348"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.936169" 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-08-10T02:08:20.935764" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.936618" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:20.936369" 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-08-10T02:08:20.944778" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.944382" elapsed="0.000425"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.951086" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.951646" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:20.951756" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.944942" elapsed="0.006840"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.952203" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.951944" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.954886" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.952414" elapsed="0.002529"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:20.957803" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:08:20.955096" elapsed="0.002803"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.955067" elapsed="0.002867"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:20.958148" 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-08-10T02:08:20.958518" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:20.958278" elapsed="0.000314"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:20.958255" elapsed="0.000370"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.958670" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:20.960982" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:20.961046" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:20.943998" elapsed="0.017080"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.963864" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.961860" elapsed="0.002067"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.961836" elapsed="0.002113"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.964546" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.964118" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.965086" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:20.964736" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:20.965160" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:20.965374" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:20.961403" elapsed="0.004000"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:20.965560" 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-08-10T02:08:20.943428" elapsed="0.022595"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.974146" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:20.973825" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:20.983625" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:20.986167" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:20.986683" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:20.974304" elapsed="0.012420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.987300" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.986947" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:20.995468" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:20.987591" elapsed="0.008986"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:20.999167" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:20.996678" elapsed="0.002539"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:20.996652" elapsed="0.002587"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.022738" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:21.022786" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:20.999400" elapsed="0.023408"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:21.024632" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.022887" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.022868" elapsed="0.001843"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:21.024744" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.024943" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:21.024986" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:20.973357" elapsed="0.051651"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.027161" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.025581" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.025562" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.027799" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.027393" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.028351" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.027986" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.028426" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.028604" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.025230" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.028783" 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-08-10T02:08:20.972667" elapsed="0.056565"/>
</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-08-10T02:08:20.924955" elapsed="0.104333"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:20.918067" elapsed="0.111357"/>
</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-08-10T02:08:21.040405" 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-08-10T02:08:21.040558" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:21.040236" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:21.041172" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3974c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:21.040740" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.041658" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:21.041371" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.042110" 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-08-10T02:08:21.041836" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.042602" 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-08-10T02:08:21.042288" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.043601" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:21.042779" elapsed="0.000854"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.044130" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.043791" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.044763" 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-08-10T02:08:21.044422" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.045297" 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-08-10T02:08:21.044964" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.045828" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.045511" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.046375" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.046030" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.046944" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3974c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.046614" 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-08-10T02:08:21.039896" elapsed="0.007148"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.047601" 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-08-10T02:08:21.047192" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.048036" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:21.047791" 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-08-10T02:08:21.056033" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.055713" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.062020" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.062600" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:21.062708" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.056191" elapsed="0.006544"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.063298" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.062896" elapsed="0.000493"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.066954" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.063593" elapsed="0.003436"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:21.069722" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:08:21.067188" elapsed="0.002630"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.067159" elapsed="0.002693"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:21.070052" 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-08-10T02:08:21.070409" elapsed="0.000070"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.070191" elapsed="0.000338"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:21.070166" elapsed="0.000396"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.070610" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:21.072452" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:21.072499" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:21.055394" elapsed="0.017128"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.074721" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.073078" elapsed="0.001690"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.073061" elapsed="0.001730"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.075375" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.074939" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.075924" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.075565" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.076000" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.076179" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.072742" elapsed="0.003463"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.076391" 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-08-10T02:08:21.054787" elapsed="0.022060"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.084698" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.084389" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.095501" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.099402" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:21.099813" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.084853" elapsed="0.014997"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.100458" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.100080" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.106062" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.100722" elapsed="0.006483"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.109038" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.107279" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.107260" elapsed="0.001849"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.133595" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:21.133643" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:21.109249" elapsed="0.024418"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:21.135631" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.133750" elapsed="0.001938"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.133731" elapsed="0.001981"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:21.135747" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:08:21.135950" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:21.135994" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:21.083991" 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-08-10T02:08:21.138181" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.136613" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.136595" elapsed="0.001653"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.138865" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.138413" elapsed="0.000479"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.139420" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.139052" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.139495" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.139701" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.136255" elapsed="0.003472"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.139911" 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-08-10T02:08:21.083361" elapsed="0.057026"/>
</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-08-10T02:08:21.036607" elapsed="0.103839"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:21.029752" elapsed="0.110813"/>
</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-08-10T02:08:21.151473" 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-08-10T02:08:21.151626" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:21.151310" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:21.152223" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8a340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:21.151804" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.152701" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:21.152420" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.153142" 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-08-10T02:08:21.152877" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.153598" 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-08-10T02:08:21.153314" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.154551" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:21.153772" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.155067" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.154736" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.155643" 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-08-10T02:08:21.155304" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.156163" 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-08-10T02:08:21.155834" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.156680" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.156369" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.157188" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.156873" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.157717" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8a340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.157399" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:21.150978" elapsed="0.006834"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.158354" 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-08-10T02:08:21.157960" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.158786" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:21.158547" 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-08-10T02:08:21.166712" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.166394" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.173256" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.174027" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:21.174172" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.166865" elapsed="0.007343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.174823" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.174451" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.178413" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.175094" elapsed="0.003426"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:21.181105" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:08:21.178669" elapsed="0.002529"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.178641" elapsed="0.002592"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:21.181453" 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-08-10T02:08:21.181764" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.181580" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:21.181558" elapsed="0.000308"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.181910" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:21.184172" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:21.184236" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:21.166064" elapsed="0.018204"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.187259" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.185044" elapsed="0.002261"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.185020" elapsed="0.002306"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.187882" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.187489" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.188430" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.188067" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.188504" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:21.188678" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.184587" elapsed="0.004116"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.188856" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:21.165496" elapsed="0.023802"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.197098" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.196800" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.205695" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.208898" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:21.209313" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.197253" elapsed="0.012120"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.209970" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.209608" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.215691" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.210230" elapsed="0.006564"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.219263" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.216897" elapsed="0.002417"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.216869" elapsed="0.002484"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.243453" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:21.243501" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:21.219496" elapsed="0.024028"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:21.245306" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.243603" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.243584" elapsed="0.001820"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:21.245437" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:21.245639" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:21.245683" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:21.196426" elapsed="0.049279"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.250014" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.246273" elapsed="0.003787"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.246255" elapsed="0.003827"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.250697" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.250233" elapsed="0.000492"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.251242" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.250887" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.251317" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:08:21.251515" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.245936" elapsed="0.005604"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.251695" 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-08-10T02:08:21.195791" elapsed="0.056361"/>
</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-08-10T02:08:21.147669" elapsed="0.104540"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:21.140851" elapsed="0.111495"/>
</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-08-10T02:08:21.266475" 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-08-10T02:08:21.266662" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:21.266303" elapsed="0.000389"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:21.267261" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:21.266844" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.267741" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:21.267459" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.268185" 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-08-10T02:08:21.267918" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.268644" 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-08-10T02:08:21.268375" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.269521" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:21.268818" elapsed="0.000734"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.270036" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.269705" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.270656" 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-08-10T02:08:21.270290" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.271177" 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-08-10T02:08:21.270850" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.271702" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.271391" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.272212" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.271897" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.272741" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.272423" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:21.265894" elapsed="0.006942"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.273377" 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-08-10T02:08:21.272983" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.273794" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:21.273556" 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-08-10T02:08:21.281679" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.281373" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.288151" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.288715" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:21.288818" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.281835" elapsed="0.007009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.289253" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.289003" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.292226" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.289459" elapsed="0.002839"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:21.294871" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:21.292420" elapsed="0.002549"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.292392" elapsed="0.002652"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:21.295248" 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-08-10T02:08:21.295585" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.295398" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:21.295373" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.295734" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:21.298008" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:21.298071" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:21.281043" elapsed="0.017060"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.300585" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.298926" elapsed="0.001705"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.298899" elapsed="0.001753"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.301193" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.300797" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.301742" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.301396" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.301817" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.302008" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.298422" 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-08-10T02:08:21.302190" 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-08-10T02:08:21.280486" elapsed="0.022192"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.310447" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.310131" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.321494" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.325607" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:21.326247" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.310630" elapsed="0.015677"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.327181" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.326754" elapsed="0.000491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.332818" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.327468" elapsed="0.006445"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.336144" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.334014" elapsed="0.002179"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.333987" elapsed="0.002228"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.359420" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:21.359468" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:21.336373" elapsed="0.023117"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:21.361270" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.359569" elapsed="0.001757"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.359550" elapsed="0.001833"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:21.361418" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.361622" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:21.361667" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:21.309759" elapsed="0.051930"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.363859" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.362234" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.362216" elapsed="0.001710"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.364488" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.364073" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.365026" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.364676" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.365101" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.365277" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.361905" elapsed="0.003397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.365475" 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-08-10T02:08:21.309130" elapsed="0.056790"/>
</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-08-10T02:08:21.259543" elapsed="0.106432"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:21.252657" elapsed="0.113432"/>
</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-08-10T02:08:21.376942" 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-08-10T02:08:21.377076" 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-08-10T02:08:21.376804" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:21.377679" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:21.377255" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.378132" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:21.377857" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.378623" 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-08-10T02:08:21.378306" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.379067" 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-08-10T02:08:21.378798" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.379913" 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-08-10T02:08:21.379238" elapsed="0.000706"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.380445" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.380101" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.381000" 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-08-10T02:08:21.380679" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.381532" 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-08-10T02:08:21.381191" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.382031" 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-08-10T02:08:21.381721" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.382556" 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-08-10T02:08:21.382222" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.383100" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.382782" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:21.376477" elapsed="0.006718"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.383735" 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-08-10T02:08:21.383358" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.384148" 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-08-10T02:08:21.383913" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.392009" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.391710" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.397671" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.398171" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:21.398272" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.392166" elapsed="0.006131"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.398776" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.398482" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.402263" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.398974" 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-08-10T02:08:21.404895" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:21.402455" elapsed="0.002534"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.402428" elapsed="0.002635"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:21.405265" 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-08-10T02:08:21.405604" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.405417" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:21.405393" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.405751" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:21.407806" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:21.407852" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:21.391394" elapsed="0.016481"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.410004" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.408436" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.408418" elapsed="0.001653"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.410640" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.410216" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.411172" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.410826" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.411247" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:21.411442" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.408087" elapsed="0.003381"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.411623" 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-08-10T02:08:21.390821" elapsed="0.021247"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.419805" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.419508" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.430296" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.432874" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:21.433271" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.419960" elapsed="0.013348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.433903" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.433555" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.441068" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.434163" elapsed="0.007687"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.443696" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.441923" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.441903" elapsed="0.001865"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.465615" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:21.465662" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:21.443908" elapsed="0.021777"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:21.467518" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.465763" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.465744" elapsed="0.001855"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:21.467633" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.467828" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:21.467871" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:21.419113" elapsed="0.048780"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.470040" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.468458" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.468440" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.470746" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.470254" elapsed="0.000521"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.471288" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.470937" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.471382" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:21.471561" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.468110" 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-08-10T02:08:21.471741" 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-08-10T02:08:21.418491" elapsed="0.053695"/>
</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-08-10T02:08:21.373212" elapsed="0.099029"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:21.366364" elapsed="0.106006"/>
</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-08-10T02:08:21.483145" 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-08-10T02:08:21.483278" 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-08-10T02:08:21.483008" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:21.483875" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1f80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:21.483475" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.484327" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:21.484052" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.484788" 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-08-10T02:08:21.484521" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.485225" 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-08-10T02:08:21.484960" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.486059" 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-08-10T02:08:21.485417" elapsed="0.000673"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.486591" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.486242" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.487178" 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-08-10T02:08:21.486855" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.487713" 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-08-10T02:08:21.487388" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.488219" 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-08-10T02:08:21.487905" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.488746" 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-08-10T02:08:21.488428" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.489255" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda1f80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.488939" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:21.482678" elapsed="0.006690"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.489892" 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-08-10T02:08:21.489515" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.490307" 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-08-10T02:08:21.490069" 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-08-10T02:08:21.498189" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.497889" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.503315" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.503828" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:21.503930" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.498361" elapsed="0.005594"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.504569" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.504188" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.508130" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.504828" elapsed="0.003374"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:21.510774" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:21.508296" elapsed="0.002571"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.508270" elapsed="0.002683"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:21.511164" 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-08-10T02:08:21.511407" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.511256" elapsed="0.000204"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:21.511239" elapsed="0.000244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.511515" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:21.513133" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:21.513177" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:21.497577" elapsed="0.015623"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.515368" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.513760" elapsed="0.001657"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.513743" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.515982" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.515585" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.516537" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.516169" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.516612" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:21.516790" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.513429" elapsed="0.003387"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.516970" 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-08-10T02:08:21.497008" elapsed="0.020429"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.525183" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.524887" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.535482" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.539572" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:21.540203" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.525354" elapsed="0.014907"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.541220" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.540656" elapsed="0.000665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.548578" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.541680" elapsed="0.007695"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.551202" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.549447" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.549428" elapsed="0.001845"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.575042" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:21.575089" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:21.551432" elapsed="0.023680"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:21.576923" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.575192" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.575173" elapsed="0.001832"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:21.577038" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.577233" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:21.577277" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:21.524515" elapsed="0.052784"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.579474" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.577866" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.577848" elapsed="0.001694"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.580084" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.579688" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.580641" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.580273" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.580716" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.580891" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.577534" elapsed="0.003382"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.581072" 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-08-10T02:08:21.523886" elapsed="0.057651"/>
</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-08-10T02:08:21.479422" elapsed="0.102171"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:21.472623" elapsed="0.109080"/>
</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-08-10T02:08:21.592371" 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-08-10T02:08:21.592506" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:21.592219" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:21.593072" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda22f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:21.592686" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.593546" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:21.593250" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.593987" 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-08-10T02:08:21.593721" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.594443" 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-08-10T02:08:21.594158" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.595220" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:21.594616" elapsed="0.000635"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.595749" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.595423" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.596302" 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-08-10T02:08:21.595981" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.596837" 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-08-10T02:08:21.596512" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.597352" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:21.597026" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.597863" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:21.597548" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.598393" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda22f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.598056" 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-08-10T02:08:21.591891" elapsed="0.006599"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.599044" 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-08-10T02:08:21.598637" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.599482" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:21.599225" 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-08-10T02:08:21.607375" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.607061" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.612181" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.612897" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:21.613038" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.607533" elapsed="0.005541"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.613669" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.613294" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.617219" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.613929" elapsed="0.003361"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:21.619687" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:08:21.617410" elapsed="0.002344"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.617383" elapsed="0.002395"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:21.619921" 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-08-10T02:08:21.620185" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.620049" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:21.620031" elapsed="0.000229"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.620292" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:21.621919" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:21.621963" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:21.606748" elapsed="0.015238"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.624118" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.622546" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.622528" elapsed="0.001656"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.624740" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.624345" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.625268" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.624925" elapsed="0.000369"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.625359" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:21.625538" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.622198" elapsed="0.003365"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.625717" 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-08-10T02:08:21.606163" elapsed="0.020000"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.633909" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.633613" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.642560" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.646191" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:21.646897" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.634062" elapsed="0.012896"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.647916" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.647313" elapsed="0.000704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.653738" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.648374" elapsed="0.006161"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.656374" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.654606" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.654587" elapsed="0.001858"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.679702" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:21.679750" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:21.656584" elapsed="0.023189"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:21.681564" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.679851" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.679832" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:21.681677" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.681872" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:21.681915" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:21.633222" elapsed="0.048716"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.684144" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.682508" elapsed="0.001682"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.682489" elapsed="0.001722"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.684773" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.684374" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.685306" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.684959" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.685398" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.685575" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.682155" 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-08-10T02:08:21.685754" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:21.632611" elapsed="0.053588"/>
</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-08-10T02:08:21.588644" elapsed="0.097612"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:21.581874" elapsed="0.104513"/>
</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-08-10T02:08:21.697204" 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-08-10T02:08:21.697361" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:21.697065" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:21.697932" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3695d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:21.697542" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.698410" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:21.698113" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.698886" 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-08-10T02:08:21.698585" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.699327" 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-08-10T02:08:21.699058" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.700077" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:21.699521" elapsed="0.000586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.700674" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.700260" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.701228" 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-08-10T02:08:21.700909" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.701763" 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-08-10T02:08:21.701439" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.702260" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:21.701952" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.702817" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:21.702472" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.703328" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3695d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.703013" 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-08-10T02:08:21.696737" elapsed="0.006707"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.703963" 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-08-10T02:08:21.703589" elapsed="0.000404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.704393" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:21.704141" 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-08-10T02:08:21.714619" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.714290" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.720119" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.720663" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:21.720766" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.714798" elapsed="0.005993"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.721196" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.720948" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.724113" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.721401" elapsed="0.002783"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:21.726747" elapsed="0.000062"/>
</return>
<status status="PASS" start="2026-08-10T02:08:21.724291" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.724265" elapsed="0.002632"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:21.727093" 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-08-10T02:08:21.727473" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.727218" elapsed="0.000329"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:21.727195" elapsed="0.000384"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.727626" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:21.730115" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:21.730179" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:21.713974" elapsed="0.016242"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.732987" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.731096" elapsed="0.001937"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.731071" elapsed="0.001983"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.733610" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.733199" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.734142" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.733795" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.734216" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.734413" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.730587" elapsed="0.003851"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.734592" 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-08-10T02:08:21.713384" elapsed="0.021668"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.742817" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.742505" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.753363" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.755910" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:21.756311" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.742972" elapsed="0.013398"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.756949" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.756594" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.762615" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.757211" elapsed="0.006532"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.765743" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.763877" elapsed="0.001916"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.763819" elapsed="0.001996"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.787259" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:21.787306" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:21.765954" elapsed="0.021390"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:21.789147" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.787426" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.787406" elapsed="0.001820"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:21.789260" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:21.789471" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:21.789515" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:21.742114" elapsed="0.047424"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.791705" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.790088" elapsed="0.001662"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.790069" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.792319" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.791918" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.792878" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.792525" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.792953" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.793130" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.789758" elapsed="0.003397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.793311" 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-08-10T02:08:21.741500" elapsed="0.052305"/>
</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-08-10T02:08:21.693481" elapsed="0.100381"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:21.686566" elapsed="0.107412"/>
</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-08-10T02:08:21.804921" 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-08-10T02:08:21.805061" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:21.804783" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:21.805652" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d9850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:21.805239" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.806104" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:21.805829" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.806564" 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-08-10T02:08:21.806278" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.807019" 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-08-10T02:08:21.806737" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.807773" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:21.807193" elapsed="0.000610"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.808285" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.807958" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.808864" 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-08-10T02:08:21.808542" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.809405" 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-08-10T02:08:21.809057" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.809910" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:21.809599" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.810443" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:21.810109" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.810992" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d9850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.810640" 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-08-10T02:08:21.804454" elapsed="0.006636"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.811636" 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-08-10T02:08:21.811238" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.812052" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:21.811814" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.819943" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.819644" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.825230" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.825761" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:21.825863" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.820097" elapsed="0.005791"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.826292" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.826044" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.829274" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.826499" elapsed="0.002871"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:21.831921" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:21.829467" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.829440" elapsed="0.002606"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:21.832239" 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-08-10T02:08:21.832652" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.832405" elapsed="0.000322"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:21.832373" elapsed="0.000388"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.832807" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:21.835116" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:21.835178" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:21.819311" elapsed="0.015899"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.837628" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.835996" elapsed="0.001678"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.835967" elapsed="0.001728"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.838235" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.837840" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.838785" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.838438" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.838873" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:21.839050" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.835529" elapsed="0.003545"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:21.839227" 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-08-10T02:08:21.818715" elapsed="0.020980"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.847473" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.847157" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.857501" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.860229" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:21.860896" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.847628" elapsed="0.013329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.861918" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.861311" elapsed="0.000711"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.872277" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.862372" elapsed="0.011012"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.876129" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.873489" elapsed="0.002701"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.873463" elapsed="0.002750"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.944848" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:21.944914" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:21.876373" elapsed="0.068566"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:21.946936" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.945073" elapsed="0.001925"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.945039" elapsed="0.001987"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:21.947065" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:08:21.947280" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:21.947324" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:21.846772" elapsed="0.100592"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.949570" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.947983" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.947965" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.950245" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.949790" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.950804" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.950451" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:21.950911" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:21.951094" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.947622" 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-08-10T02:08:21.951274" 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-08-10T02:08:21.846144" elapsed="0.105619"/>
</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-08-10T02:08:21.801149" elapsed="0.150673"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:21.794252" elapsed="0.157694"/>
</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-08-10T02:08:21.962871" 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-08-10T02:08:21.963053" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:21.962724" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:21.963675" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff314e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:21.963232" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.964138" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:21.963855" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.964601" 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-08-10T02:08:21.964314" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:21.965040" 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-08-10T02:08:21.964775" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:21.965936" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:21.965213" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.966620" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.966123" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.967229" 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-08-10T02:08:21.966873" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.967767" 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-08-10T02:08:21.967441" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.968271" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:21.967958" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.968801" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:21.968482" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.969314" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff314e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:21.968995" 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-08-10T02:08:21.962393" elapsed="0.007037"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.969956" 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-08-10T02:08:21.969577" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.970392" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:21.970133" 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-08-10T02:08:21.978245" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:21.977937" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:21.983809" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:21.985020" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:21.985250" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:21.978418" elapsed="0.006889"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.986278" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.985706" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.990703" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:21.986727" elapsed="0.004053"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:21.993540" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-08-10T02:08:21.990884" elapsed="0.002807"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.990854" elapsed="0.002878"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:21.993942" 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-08-10T02:08:21.994270" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:21.994075" elapsed="0.000294"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:21.994051" elapsed="0.000354"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.994453" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:21.996610" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:21.996656" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:21.977622" elapsed="0.019056"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:21.998819" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:21.997227" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:21.997210" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:21.999470" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.999052" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.000004" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:21.999657" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.000080" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:22.000257" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:21.996897" elapsed="0.003385"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.000454" 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-08-10T02:08:21.977046" elapsed="0.023866"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.008683" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.008380" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.018757" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.022502" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.023209" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.008836" elapsed="0.014435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.024238" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.023668" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.030315" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.024691" 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-08-10T02:08:22.033016" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.031252" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.031228" elapsed="0.001863"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.056777" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.056825" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.033246" elapsed="0.023603"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.058665" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.056927" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.056908" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.058782" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:08:22.059017" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.059063" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.007990" elapsed="0.051095"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.061323" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.059739" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.059721" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.061972" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.061556" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.062528" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.062159" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.062604" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:22.062780" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.059326" 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-08-10T02:08:22.062983" 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-08-10T02:08:22.007374" elapsed="0.056104"/>
</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-08-10T02:08:21.959143" elapsed="0.104392"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:21.952277" elapsed="0.111380"/>
</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-08-10T02:08:22.074625" 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-08-10T02:08:22.074846" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:22.074482" elapsed="0.000394"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:22.075526" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec339b20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:22.075076" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.075990" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:22.075706" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.076455" 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-08-10T02:08:22.076166" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.076894" 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-08-10T02:08:22.076628" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.077796" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:22.077069" elapsed="0.000759"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.078313" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.077983" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.078889" 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-08-10T02:08:22.078568" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.079464" 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-08-10T02:08:22.079118" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.079969" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:22.079657" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.080497" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:22.080164" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.081167" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec339b20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.080692" elapsed="0.000519"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:22.074137" elapsed="0.007129"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.081820" 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-08-10T02:08:22.081437" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.082241" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:22.082000" 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-08-10T02:08:22.090018" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.089711" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.095879" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.096425" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:22.096528" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.090173" elapsed="0.006381"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.096963" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.096713" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.099520" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.097148" elapsed="0.002425"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:22.101971" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:22.099641" elapsed="0.002466"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.099623" elapsed="0.002522"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:22.102364" 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-08-10T02:08:22.102680" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.102494" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:22.102471" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.102830" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:22.105080" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:22.105143" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:22.089394" elapsed="0.015781"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.108226" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.105954" elapsed="0.002317"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.105930" elapsed="0.002363"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.108849" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.108455" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.109401" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.109035" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.109476" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:22.109652" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.105496" elapsed="0.004181"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.109829" 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-08-10T02:08:22.088819" elapsed="0.021460"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.118082" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.117768" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.127354" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.129870" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.130269" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.118236" elapsed="0.012070"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.131230" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.130554" elapsed="0.000746"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.136653" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.131534" elapsed="0.006197"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.140277" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.137830" elapsed="0.002536"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.137804" elapsed="0.002595"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.168519" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.168567" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.140594" elapsed="0.027997"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.170393" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.168671" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.168652" elapsed="0.001824"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.170510" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:22.170710" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.170754" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.117392" elapsed="0.053385"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.172960" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.171388" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.171370" elapsed="0.001657"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.173598" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.173176" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.174133" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.173785" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.174208" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:22.174406" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.171030" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.174588" 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-08-10T02:08:22.116757" elapsed="0.058296"/>
</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-08-10T02:08:22.070879" elapsed="0.104230"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:22.063978" elapsed="0.111247"/>
</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-08-10T02:08:22.186112" 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-08-10T02:08:22.186284" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:22.185965" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:22.186906" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0cc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:22.186483" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.187428" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:22.187126" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.187873" 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-08-10T02:08:22.187605" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.188312" 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-08-10T02:08:22.188045" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.189223" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:22.188503" elapsed="0.000750"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.189751" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.189422" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.190348" 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-08-10T02:08:22.190009" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.190866" 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-08-10T02:08:22.190542" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.191396" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:22.191069" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.191907" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:22.191590" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.192443" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0cc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.192106" 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-08-10T02:08:22.185635" elapsed="0.006906"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.193075" 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-08-10T02:08:22.192687" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.193514" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:22.193254" 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-08-10T02:08:22.201484" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.201157" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.206205" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.206734" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:22.206839" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.201642" elapsed="0.005225"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.207314" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.207050" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.209960" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.207527" 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-08-10T02:08:22.211959" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-08-10T02:08:22.210083" elapsed="0.001972"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.210065" elapsed="0.002030"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:22.212311" 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-08-10T02:08:22.212660" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.212466" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:22.212442" elapsed="0.000324"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.212811" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:22.215170" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:22.215255" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:22.200833" elapsed="0.014464"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.218417" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.216138" elapsed="0.002347"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.216112" elapsed="0.002405"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.219400" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.218726" elapsed="0.000714"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.220208" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.219676" elapsed="0.000561"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.220288" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:22.220495" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.215632" elapsed="0.004890"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.220680" 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-08-10T02:08:22.200248" elapsed="0.020891"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.229031" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.228688" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.237311" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.240003" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.240455" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.229209" elapsed="0.011284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.241086" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.240721" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.246788" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.241373" elapsed="0.006549"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.249868" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.248043" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.248009" elapsed="0.001933"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.271479" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.271527" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.250085" elapsed="0.021465"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.273418" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.271631" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.271612" elapsed="0.001888"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.273534" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:22.273734" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.273777" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.228288" elapsed="0.045511"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.276003" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.274385" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.274366" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.276671" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.276223" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.277215" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.276862" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.277292" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:22.277513" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.274026" 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-08-10T02:08:22.277698" 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-08-10T02:08:22.227643" elapsed="0.050511"/>
</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-08-10T02:08:22.182398" elapsed="0.095815"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:22.175544" elapsed="0.102814"/>
</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-08-10T02:08:22.289503" 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-08-10T02:08:22.289663" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:22.289352" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:22.290261" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee840&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:22.289847" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.290755" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:22.290462" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.291241" 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-08-10T02:08:22.290936" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.291711" 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-08-10T02:08:22.291440" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.292688" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:22.291888" elapsed="0.000842"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.293432" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.292947" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.294212" 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-08-10T02:08:22.293765" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.294965" 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-08-10T02:08:22.294509" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.295757" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:22.295279" elapsed="0.000542"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.296408" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:22.296038" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.296939" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee840&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.296611" 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-08-10T02:08:22.288999" elapsed="0.008044"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.297603" 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-08-10T02:08:22.297196" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.298034" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:22.297788" 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-08-10T02:08:22.306012" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.305691" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.311650" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.312372" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:22.312519" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.306200" elapsed="0.006355"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.313131" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.312779" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.316710" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.313414" elapsed="0.003372"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:22.319399" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:08:22.316885" elapsed="0.002612"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.316858" elapsed="0.002674"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:22.319734" 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-08-10T02:08:22.320050" elapsed="0.000072"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.319861" elapsed="0.000310"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:22.319838" elapsed="0.000367"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.320252" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:22.322545" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:22.322611" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:22.305367" elapsed="0.017277"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.325278" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.323549" elapsed="0.001775"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.323522" elapsed="0.001840"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.325906" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.325511" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.326457" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.326093" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.326533" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:22.326710" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.322949" elapsed="0.003786"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.326889" elapsed="0.000479"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:22.304784" elapsed="0.022659"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.335161" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.334836" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.346458" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.348297" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.348600" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.335317" elapsed="0.013309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.349042" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.348787" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.353064" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.349229" elapsed="0.004644"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.355731" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.353946" elapsed="0.001834"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.353926" elapsed="0.001875"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.378325" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.378389" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.355944" elapsed="0.022469"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.380295" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.378491" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.378472" elapsed="0.001921"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.380428" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:22.380625" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.380668" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.334461" elapsed="0.046230"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.382838" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.381242" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.381223" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.383491" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.383053" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.384026" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.383678" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.384100" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:22.384276" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.380909" 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-08-10T02:08:22.384578" 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-08-10T02:08:22.333833" elapsed="0.051195"/>
</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-08-10T02:08:22.285701" elapsed="0.099383"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:22.278693" elapsed="0.106506"/>
</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-08-10T02:08:22.396134" 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-08-10T02:08:22.396275" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:22.395994" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:22.396896" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff22f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:22.396473" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.397371" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:22.397075" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.397817" 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-08-10T02:08:22.397550" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.398258" 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-08-10T02:08:22.397992" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.399193" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:22.398448" elapsed="0.000776"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.399727" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.399397" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.400283" 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-08-10T02:08:22.399963" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.400819" 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-08-10T02:08:22.400494" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.401319" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:22.401009" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.401849" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:22.401533" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.402376" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff22f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.402043" 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-08-10T02:08:22.395664" elapsed="0.006808"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.402993" 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-08-10T02:08:22.402617" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.403463" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:22.403205" 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-08-10T02:08:22.411477" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.411048" elapsed="0.000458"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.416708" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.417209" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:22.417314" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.411641" elapsed="0.005724"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.417788" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.417528" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.420359" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.417977" 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-08-10T02:08:22.422258" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-08-10T02:08:22.420484" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.420465" elapsed="0.001907"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:22.422519" 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-08-10T02:08:22.422745" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.422611" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:22.422594" elapsed="0.000228"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.422855" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:22.424759" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:22.424824" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:22.410734" elapsed="0.014123"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.427882" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.425658" elapsed="0.002288"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.425633" elapsed="0.002344"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.428759" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.428180" elapsed="0.000616"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.429535" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.429025" elapsed="0.000546"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.429639" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:08:22.429887" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.425164" elapsed="0.004757"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.430138" elapsed="0.000559"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:22.410159" elapsed="0.020624"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.438972" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.438667" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.446915" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.449806" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.450485" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.439160" elapsed="0.011386"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.451549" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.450904" elapsed="0.000748"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.458155" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.451972" elapsed="0.006963"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.460775" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.459007" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.458987" elapsed="0.001859"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.483285" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.483354" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.460985" elapsed="0.022395"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.485172" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.483461" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.483441" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.485286" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:22.485501" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.485545" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.438265" elapsed="0.047302"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.487763" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.486120" elapsed="0.001689"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.486102" elapsed="0.001728"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.488392" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.487976" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.488928" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.488578" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.489002" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:22.489180" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.485784" elapsed="0.003421"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.489377" 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-08-10T02:08:22.437638" elapsed="0.052257"/>
</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-08-10T02:08:22.392405" elapsed="0.097548"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:22.385487" elapsed="0.104581"/>
</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-08-10T02:08:22.500914" 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-08-10T02:08:22.501055" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:22.500775" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:22.501649" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1710&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:22.501234" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.502103" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:22.501827" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.502567" 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-08-10T02:08:22.502279" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.503008" 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-08-10T02:08:22.502742" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.503861" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:22.503207" elapsed="0.000684"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.504401" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.504050" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.504989" 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-08-10T02:08:22.504665" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.505527" 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-08-10T02:08:22.505181" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.506028" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.505718" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.506558" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.506220" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.507072" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1710&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.506752" 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-08-10T02:08:22.500449" elapsed="0.006743"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.507742" 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-08-10T02:08:22.507359" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.508157" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:22.507920" 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-08-10T02:08:22.516077" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.515777" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.521556" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.522076" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:22.522177" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.516232" elapsed="0.005971"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.522630" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.522380" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.525174" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.522817" elapsed="0.002409"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:22.527040" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:22.525294" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.525275" elapsed="0.001855"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:22.527284" 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-08-10T02:08:22.527561" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.527425" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:22.527407" elapsed="0.000228"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.527667" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:22.529281" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:22.529325" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:22.515460" elapsed="0.013903"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.531525" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.529908" elapsed="0.001662"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.529891" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.532134" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.531738" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.532687" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.532319" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.532763" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:22.532937" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.529577" elapsed="0.003385"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.533115" 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-08-10T02:08:22.514856" elapsed="0.018726"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.541320" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.541025" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.549756" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.551592" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.551877" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.541491" elapsed="0.010412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.552322" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.552072" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.556347" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.552529" elapsed="0.004576"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.558936" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.557177" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.557157" elapsed="0.001853"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.579743" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.579791" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.559149" elapsed="0.020665"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.583238" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.579893" elapsed="0.003404"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.579874" elapsed="0.003448"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.583373" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:22.583573" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.583615" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.540653" elapsed="0.042984"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.585769" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.584185" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.584167" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.586393" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.585980" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.586924" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.586578" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.586999" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:22.587180" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.583856" elapsed="0.003362"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.587390" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:22.540028" elapsed="0.047808"/>
</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-08-10T02:08:22.497175" elapsed="0.090717"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:22.490357" elapsed="0.097646"/>
</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-08-10T02:08:22.598859" 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-08-10T02:08:22.598994" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:22.598721" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:22.599616" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:22.599177" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.600069" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:22.599793" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.600533" 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-08-10T02:08:22.600244" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.600970" 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-08-10T02:08:22.600706" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.601752" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:22.601143" elapsed="0.000639"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.602262" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.601934" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.602828" 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-08-10T02:08:22.602509" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.603366" 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-08-10T02:08:22.603017" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.603866" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.603556" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.604388" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.604057" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.604898" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.604581" 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-08-10T02:08:22.598391" elapsed="0.006602"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.605532" 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-08-10T02:08:22.605138" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.605944" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-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-08-10T02:08:22.605708" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.614211" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.613913" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.619455" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.619957" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:22.620063" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.614382" elapsed="0.005706"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.620519" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.620247" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.623019" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.620706" elapsed="0.002365"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:22.624975" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:22.623140" elapsed="0.001902"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.623121" elapsed="0.001946"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:22.625209" 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-08-10T02:08:22.625486" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.625349" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:22.625315" elapsed="0.000245"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.625592" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:22.627197" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:22.627253" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:22.613601" elapsed="0.013676"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.629426" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.627838" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.627821" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.630029" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.629637" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.630578" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.630214" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.630653" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:22.630828" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.627505" elapsed="0.003349"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.631007" 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-08-10T02:08:22.613029" elapsed="0.018474"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.639279" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.638954" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.648487" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.652737" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.653419" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.639454" elapsed="0.014028"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.654448" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.653838" elapsed="0.000713"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.663545" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;897000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;392000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;405000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;16&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;901000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;899000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&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;4&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;21&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/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;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;20&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;369000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;22&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;870000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&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;868000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;25&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&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;5&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;478000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&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;6&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;9&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.654865" elapsed="0.009944"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.666622" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.664881" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.664861" elapsed="0.001831"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.686988" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.687035" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.666833" elapsed="0.020225"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.688993" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.687136" elapsed="0.001913"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.687117" elapsed="0.001956"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.689107" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:22.689302" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.689364" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.638581" elapsed="0.050807"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.691540" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.689938" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.689920" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.692163" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.691764" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.692720" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.692365" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.692795" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:22.692973" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.689606" elapsed="0.003392"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.693153" 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-08-10T02:08:22.637946" elapsed="0.055675"/>
</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-08-10T02:08:22.595078" elapsed="0.098600"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:22.588180" elapsed="0.105612"/>
</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-08-10T02:08:22.704822" 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-08-10T02:08:22.704961" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:22.704685" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:22.705555" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036cf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:22.705139" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.706009" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:22.705733" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.706470" 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-08-10T02:08:22.706184" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.706910" 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-08-10T02:08:22.706644" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.707729" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:22.707082" elapsed="0.000677"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.708242" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.707915" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.708809" 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-08-10T02:08:22.708488" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.709322" 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-08-10T02:08:22.709000" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.709838" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:22.709529" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.710359" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:22.710030" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.710877" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036cf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.710553" 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-08-10T02:08:22.704358" elapsed="0.006614"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.711535" 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-08-10T02:08:22.711116" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.711951" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;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-08-10T02:08:22.711715" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.719992" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.719674" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.724634" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.725238" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:22.725362" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.720152" elapsed="0.005238"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.725802" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.725552" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.728556" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.725987" 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-08-10T02:08:22.731164" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-08-10T02:08:22.728730" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.728701" elapsed="0.002627"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:22.731558" 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-08-10T02:08:22.731937" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.731750" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:22.731726" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.732084" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:22.734373" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:22.734439" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:22.719328" elapsed="0.015142"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.737116" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.735228" elapsed="0.001934"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.735204" elapsed="0.001979"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.737744" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.737329" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.738278" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.737929" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.738370" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:22.738547" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.734768" elapsed="0.003805"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.738726" 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-08-10T02:08:22.718697" elapsed="0.020477"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.746910" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.746613" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.755081" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.757672" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.758083" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.747066" elapsed="0.011054"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.758726" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.758370" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.764354" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.758988" elapsed="0.006130"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.766950" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.765189" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.765170" elapsed="0.001850"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.789638" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.789689" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.767159" elapsed="0.022553"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.791615" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.789796" elapsed="0.001876"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.789775" elapsed="0.001922"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.791731" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:22.791932" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.791977" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.746224" elapsed="0.045776"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.794158" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.792592" elapsed="0.001611"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.792574" elapsed="0.001650"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.794795" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.794387" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.795410" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.794983" elapsed="0.000457"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.795490" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:08:22.795684" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.792234" elapsed="0.003475"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.795871" 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-08-10T02:08:22.745608" elapsed="0.050718"/>
</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-08-10T02:08:22.701080" elapsed="0.095324"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:22.694070" elapsed="0.102459"/>
</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-08-10T02:08:22.807611" 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-08-10T02:08:22.807769" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:22.807466" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:22.808385" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d5d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:22.807947" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.808845" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:22.808565" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.809287" 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-08-10T02:08:22.809019" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.809744" 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-08-10T02:08:22.809477" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.810604" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:22.809916" elapsed="0.000719"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.811122" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.810789" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.811792" 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-08-10T02:08:22.811451" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.812315" 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-08-10T02:08:22.811991" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.812834" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.812525" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.813358" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.813027" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.813869" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d5d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.813551" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:22.807101" elapsed="0.006863"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.814503" 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-08-10T02:08:22.814109" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.814915" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:22.814680" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.822774" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.822472" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.827960" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.828723" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:22.828868" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.822927" elapsed="0.005977"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.829504" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.829127" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.833052" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.829762" elapsed="0.003362"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:22.835695" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:22.833219" elapsed="0.002569"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.833193" elapsed="0.002628"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:22.836088" 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-08-10T02:08:22.836353" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.836204" elapsed="0.000207"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:22.836184" elapsed="0.000251"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.836466" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:22.838073" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:22.838118" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:22.822143" 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-08-10T02:08:22.840278" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.838700" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.838682" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.840908" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.840513" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.841458" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.841092" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.841534" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:22.841710" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.838369" elapsed="0.003366"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.841887" 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-08-10T02:08:22.821589" elapsed="0.020763"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.850032" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.849737" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.857993" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.859853" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.860315" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.850185" elapsed="0.010227"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.861329" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.860769" elapsed="0.000701"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.869166" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.861784" elapsed="0.008160"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.871776" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.870015" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.869996" elapsed="0.001851"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.893412" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.893462" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.871986" elapsed="0.021500"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.895351" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.893567" elapsed="0.001866"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.893548" elapsed="0.001909"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.895491" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:22.895687" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.895731" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.849365" elapsed="0.046388"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.897880" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.896301" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.896284" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.898532" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.898090" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.899069" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.898720" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.899144" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:22.899320" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.895968" elapsed="0.003406"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.899531" 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-08-10T02:08:22.848739" elapsed="0.051242"/>
</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-08-10T02:08:22.803719" elapsed="0.096317"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:22.796848" elapsed="0.103300"/>
</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-08-10T02:08:22.910941" 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-08-10T02:08:22.911146" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:22.910804" elapsed="0.000372"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:22.911787" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4ea0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:22.911346" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.912243" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:22.911967" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.912706" 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-08-10T02:08:22.912438" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:22.913145" 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-08-10T02:08:22.912880" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.913936" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:22.913316" elapsed="0.000650"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.914462" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.914120" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.915018" 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-08-10T02:08:22.914695" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.915576" 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-08-10T02:08:22.915214" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.916076" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:22.915766" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.916601" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:22.916268" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.917109" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4ea0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:22.916794" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:22.910478" elapsed="0.006726"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.917746" 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-08-10T02:08:22.917367" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.918162" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:22.917924" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.926098" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.925801" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.931648" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.932500" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:22.932644" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.926253" elapsed="0.006428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.933255" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.932900" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.936822" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.933540" elapsed="0.003353"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:22.939452" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:22.936987" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.936962" elapsed="0.002616"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:22.939772" 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-08-10T02:08:22.940206" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.939895" elapsed="0.000428"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:22.939873" elapsed="0.000541"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.940488" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:08:22.944213" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:22.944260" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:22.925487" 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-08-10T02:08:22.946441" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.944861" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.944844" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.947043" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.946651" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.947626" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:22.947229" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:22.947702" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:22.947878" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.944530" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:22.948057" 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-08-10T02:08:22.924910" elapsed="0.023607"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.956223" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:22.955925" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:22.964621" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:22.966435" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:22.966720" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:22.956391" elapsed="0.010355"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.967156" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.966905" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:22.971166" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:22.967358" elapsed="0.004629"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.973812" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.972064" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.972045" elapsed="0.001838"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:22.993945" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:22.993991" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:22.974020" elapsed="0.019994"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:22.997286" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:22.994097" elapsed="0.003261"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.994079" elapsed="0.003304"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:22.997417" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:22.997610" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:22.997653" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:22.955551" elapsed="0.042124"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:22.999869" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:22.998217" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:22.998199" elapsed="0.001738"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.000511" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.000084" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.001045" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.000697" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.001119" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:23.001293" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:22.997888" 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-08-10T02:08:23.001489" elapsed="0.000380"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:22.954912" elapsed="0.047018"/>
</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-08-10T02:08:22.907225" elapsed="0.094760"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:22.900427" elapsed="0.101667"/>
</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-08-10T02:08:23.012934" 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-08-10T02:08:23.013169" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.012796" elapsed="0.000403"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:23.013782" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d9a80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:23.013367" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.014231" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:23.013958" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.014692" 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-08-10T02:08:23.014424" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.015130" 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-08-10T02:08:23.014864" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.016060" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.015301" elapsed="0.000791"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.016595" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.016246" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.017144" 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-08-10T02:08:23.016827" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.017676" 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-08-10T02:08:23.017349" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.018172" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.017864" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.018694" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.018379" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.019201" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d9a80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.018886" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:23.012468" elapsed="0.006827"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.019865" 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-08-10T02:08:23.019482" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.020277" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:23.020042" 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-08-10T02:08:23.028189" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.027886" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.033061" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.033585" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:23.033687" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.028358" elapsed="0.005354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.034123" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.033870" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.036964" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.034307" elapsed="0.002728"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:23.039634" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:23.037173" elapsed="0.002552"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.037146" elapsed="0.002613"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:23.039952" 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-08-10T02:08:23.040258" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.040076" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:23.040054" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.040446" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:23.042692" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:23.042755" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:23.027570" elapsed="0.015216"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.045362" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.043597" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.043573" elapsed="0.001858"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.045971" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.045575" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.046518" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.046156" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.046593" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.046770" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.043078" elapsed="0.003717"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.046947" 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-08-10T02:08:23.026966" elapsed="0.020445"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.055161" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.054864" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.064374" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.066882" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:23.067280" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.055314" elapsed="0.012003"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.067934" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.067578" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.073131" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.068242" elapsed="0.005664"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.075734" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.073976" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.073958" elapsed="0.001847"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.095811" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:23.095858" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:23.075948" elapsed="0.019932"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:23.097756" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.095958" elapsed="0.001853"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.095939" elapsed="0.001896"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:23.097869" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.098063" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:23.098107" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:23.054490" elapsed="0.043639"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.100286" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.098692" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.098674" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.100914" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.100518" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.101472" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.101106" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.101547" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.101723" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.098359" elapsed="0.003389"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.101904" elapsed="0.000380"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:23.053865" elapsed="0.048500"/>
</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-08-10T02:08:23.009178" elapsed="0.093245"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.002353" elapsed="0.100183"/>
</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-08-10T02:08:23.113326" 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-08-10T02:08:23.113489" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.113191" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:23.114106" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:23.113667" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.114577" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:23.114282" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.115018" 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-08-10T02:08:23.114752" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.115513" 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-08-10T02:08:23.115189" elapsed="0.000351"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.116445" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.115695" elapsed="0.000780"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.116954" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.116627" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.117533" 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-08-10T02:08:23.117193" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.118052" 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-08-10T02:08:23.117724" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.118575" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.118242" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.119234" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.118768" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.119796" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.119451" 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-08-10T02:08:23.112866" elapsed="0.007029"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.120450" 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-08-10T02:08:23.120048" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.120874" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:23.120636" 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-08-10T02:08:23.128657" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.128354" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.133486" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.133965" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:23.134115" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.128812" elapsed="0.005348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.134770" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.134421" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.138266" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.135033" elapsed="0.003373"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:23.140924" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:23.138502" elapsed="0.002514"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.138477" elapsed="0.002572"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:23.141243" 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-08-10T02:08:23.141577" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.141390" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:23.141366" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.141723" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:23.144036" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:23.144115" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:23.128026" elapsed="0.016118"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.146288" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.144720" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.144703" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.146907" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.146516" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.147454" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.147091" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.147539" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.147715" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.144392" elapsed="0.003347"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.147894" 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-08-10T02:08:23.127451" elapsed="0.020908"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.156081" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.155786" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.166050" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.168615" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:23.169016" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.156236" elapsed="0.012816"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.169868" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.169277" elapsed="0.000655"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.175221" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.170133" elapsed="0.006239"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.178180" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.176446" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.176427" elapsed="0.001824"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.200255" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:23.200302" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:23.178407" elapsed="0.021918"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:23.202189" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.200424" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.200404" elapsed="0.001866"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:23.202302" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:08:23.202516" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:23.202560" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:23.155402" elapsed="0.047181"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.204725" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.203131" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.203113" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.205391" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.204939" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.205928" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.205579" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.206002" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.206179" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.202799" elapsed="0.003405"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.206392" 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-08-10T02:08:23.154774" elapsed="0.052078"/>
</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-08-10T02:08:23.109613" elapsed="0.097295"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.102785" elapsed="0.104234"/>
</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-08-10T02:08:23.217858" 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-08-10T02:08:23.217995" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.217720" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:23.218619" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0da750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:23.218178" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.219073" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:23.218797" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.219547" 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-08-10T02:08:23.219247" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.219992" 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-08-10T02:08:23.219722" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.220945" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.220193" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.221478" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.221129" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.222032" 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-08-10T02:08:23.221711" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.222566" 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-08-10T02:08:23.222224" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.223065" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.222755" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.223645" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.223258" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.224171" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0da750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.223850" 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-08-10T02:08:23.217390" elapsed="0.006876"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.224814" 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-08-10T02:08:23.224433" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.225229" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:23.224992" 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-08-10T02:08:23.233209" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.232910" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.238543" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.239053" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:23.239154" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.233382" elapsed="0.005797"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.239668" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.239354" elapsed="0.000361"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.243094" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.239857" elapsed="0.003356"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:23.245773" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:23.243310" elapsed="0.002555"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.243284" elapsed="0.002615"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:23.246101" 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-08-10T02:08:23.246437" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.246226" elapsed="0.000284"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:23.246203" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.246588" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:23.248661" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:23.248706" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:23.232597" elapsed="0.016131"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.250848" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.249271" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.249253" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.251471" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.251059" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.252021" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.251670" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.252096" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.252271" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.248939" elapsed="0.003357"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.252475" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:23.232023" elapsed="0.020897"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.260669" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.260370" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.270748" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.273318" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:23.273743" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.260824" elapsed="0.012956"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.274378" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.274003" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.280017" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.274643" elapsed="0.006258"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.282718" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.280973" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.280954" elapsed="0.001834"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.304139" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:23.304187" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:23.282928" elapsed="0.021283"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:23.306088" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.304290" elapsed="0.001854"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.304271" elapsed="0.001898"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:23.306203" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.306418" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:23.306462" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:23.259979" elapsed="0.046506"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.308648" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.307044" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.307026" elapsed="0.001689"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.309266" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.308862" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.309816" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.309470" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.309890" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.310067" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.306709" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.310247" 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-08-10T02:08:23.259357" elapsed="0.051356"/>
</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-08-10T02:08:23.214108" elapsed="0.096661"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.207272" elapsed="0.103607"/>
</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-08-10T02:08:23.321717" 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-08-10T02:08:23.321854" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.321580" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:23.322464" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3940e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:23.322032" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.322915" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:23.322642" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.323371" 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-08-10T02:08:23.323090" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.323842" 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-08-10T02:08:23.323546" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.324751" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.324017" elapsed="0.000765"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.325270" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.324938" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.325843" 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-08-10T02:08:23.325520" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.326379" 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-08-10T02:08:23.326037" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.326883" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.326571" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.327411" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.327078" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.327964" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3940e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.327641" 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-08-10T02:08:23.321236" elapsed="0.006825"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.328608" 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-08-10T02:08:23.328212" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.329024" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:23.328788" 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-08-10T02:08:23.337028" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.336731" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.342473" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.342970" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:23.343073" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.337184" elapsed="0.005914"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.343529" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.343257" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.346922" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.343744" elapsed="0.003250"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:23.349616" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:23.347133" elapsed="0.002575"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.347106" elapsed="0.002635"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:23.349938" 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-08-10T02:08:23.350255" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.350068" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:23.350045" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.350429" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:23.352614" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:23.352660" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:23.336418" elapsed="0.016265"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.354818" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.353226" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.353208" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.355446" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.355031" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.355993" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.355643" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.356067" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:23.356245" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.352896" elapsed="0.003375"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.356445" 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-08-10T02:08:23.335838" elapsed="0.021055"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.364628" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.364313" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.374951" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.377521" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:23.377927" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.364783" elapsed="0.013180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.378573" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.378189" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.384235" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.378836" elapsed="0.006176"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.386840" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.385085" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.385066" elapsed="0.001845"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.406928" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:23.406975" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:23.387056" elapsed="0.019942"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:23.410264" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.407077" elapsed="0.003243"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.407058" elapsed="0.003304"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:23.410397" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.410596" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:23.410640" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:23.363942" elapsed="0.046720"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.412801" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.411206" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.411188" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.413429" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.413014" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.413961" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.413615" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.414036" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:23.414216" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.410878" elapsed="0.003363"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.414412" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:23.363305" elapsed="0.051550"/>
</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-08-10T02:08:23.317970" elapsed="0.096939"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.311135" elapsed="0.103883"/>
</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-08-10T02:08:23.425830" 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-08-10T02:08:23.425965" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.425696" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:23.426577" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda2c50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:23.426148" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.427027" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:23.426754" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.427485" 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-08-10T02:08:23.427202" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.427937" 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-08-10T02:08:23.427671" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.428856" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.428135" elapsed="0.000752"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.429389" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.429039" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.429939" 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-08-10T02:08:23.429621" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.430469" 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-08-10T02:08:23.430129" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.430969" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.430660" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.431499" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.431166" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.432052" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda2c50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.431727" 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-08-10T02:08:23.425368" elapsed="0.006779"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.432688" 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-08-10T02:08:23.432292" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.433101" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:23.432864" 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-08-10T02:08:23.491225" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.490837" elapsed="0.000421"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.500488" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.501064" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:23.501185" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.491421" elapsed="0.009791"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.501669" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.501402" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.504229" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.501858" elapsed="0.002423"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:23.506181" elapsed="0.000037"/>
</return>
<status status="PASS" start="2026-08-10T02:08:23.504438" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.504413" elapsed="0.001871"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:23.506446" 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-08-10T02:08:23.506668" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.506535" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:23.506520" elapsed="0.000221"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.506773" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:23.508411" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:23.508457" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:23.490489" elapsed="0.017991"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.510615" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.509034" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.509016" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.511230" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.510829" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.511812" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.511432" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.511888" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:23.512065" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.508704" elapsed="0.003386"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.512243" 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-08-10T02:08:23.489723" elapsed="0.023005"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.520492" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.520171" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.530749" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.532768" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:23.533097" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.520650" elapsed="0.012473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.533552" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.533281" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.537387" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.533739" 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-08-10T02:08:23.539995" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.538226" elapsed="0.001819"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.538208" elapsed="0.001859"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.559812" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:23.559858" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:23.540209" elapsed="0.019672"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:23.561680" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.559960" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.559941" elapsed="0.001819"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:23.561793" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:23.561985" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:23.562029" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:23.519791" elapsed="0.042260"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.564203" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.562609" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.562591" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.564830" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.564434" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.565419" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.565021" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.565494" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.565670" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.562264" 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-08-10T02:08:23.565850" 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-08-10T02:08:23.519134" elapsed="0.047161"/>
</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-08-10T02:08:23.422090" elapsed="0.144281"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.415263" elapsed="0.151233"/>
</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-08-10T02:08:23.577449" 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-08-10T02:08:23.577680" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.577288" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:23.578291" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:23.577867" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.578771" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:23.578491" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.579213" 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-08-10T02:08:23.578946" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.579673" 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-08-10T02:08:23.579404" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.580626" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.579877" elapsed="0.000779"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.581145" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.580811" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.581717" 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-08-10T02:08:23.581396" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.582231" 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-08-10T02:08:23.581908" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.582909" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.582435" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.583446" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.583111" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.583979" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.583641" 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-08-10T02:08:23.576961" elapsed="0.007115"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.584617" 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-08-10T02:08:23.584223" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.585033" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:23.584795" 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-08-10T02:08:23.592758" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.592462" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.598264" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.598787" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:23.598889" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.592913" elapsed="0.006001"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.599324" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.599075" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.601865" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.599529" elapsed="0.002388"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:23.603780" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:23.602020" elapsed="0.001826"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.602000" elapsed="0.001870"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:23.604013" 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-08-10T02:08:23.604238" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.604105" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:23.604086" elapsed="0.000225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.604360" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:08:23.605963" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:23.606008" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:23.592129" elapsed="0.013902"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.608192" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.606590" elapsed="0.001648"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.606573" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.608815" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.608421" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.609368" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.609001" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.609443" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.609619" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.606245" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.609798" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:23.591568" elapsed="0.018672"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.617972" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.617674" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.627995" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.629802" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:23.630093" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.618126" elapsed="0.011993"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.630700" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.630279" elapsed="0.000468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.634546" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.630891" elapsed="0.004415"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.637133" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.635392" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.635373" elapsed="0.001831"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.663727" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:23.663786" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:23.637361" elapsed="0.026449"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:23.665598" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.663888" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.663869" elapsed="0.001808"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:23.665710" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:23.665901" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:23.665944" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:23.617284" elapsed="0.048682"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.668130" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.666530" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.666511" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.668793" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.668375" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.669349" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.668981" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.669426" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:23.669605" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.666181" elapsed="0.003449"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.669784" 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-08-10T02:08:23.616676" elapsed="0.053552"/>
</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-08-10T02:08:23.573731" elapsed="0.096552"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.566809" elapsed="0.103602"/>
</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-08-10T02:08:23.681230" 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-08-10T02:08:23.681401" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.681092" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:23.682071" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397ab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:23.681582" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.682551" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:23.682252" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.682995" 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-08-10T02:08:23.682726" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.683462" 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-08-10T02:08:23.683168" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.684429" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.683635" elapsed="0.000824"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.684940" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.684614" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.685507" 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-08-10T02:08:23.685170" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.686022" 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-08-10T02:08:23.685699" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.686538" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.686211" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.687043" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.686731" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.687569" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397ab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.687235" 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-08-10T02:08:23.680763" elapsed="0.006906"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.688211" 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-08-10T02:08:23.687829" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.688810" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:23.688407" 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-08-10T02:08:23.696589" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.696271" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.701816" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.702318" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:23.702443" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.696743" elapsed="0.005726"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.702878" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.702628" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.705420" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.703066" 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-08-10T02:08:23.707308" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-08-10T02:08:23.705576" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.705557" elapsed="0.001858"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:23.707557" 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-08-10T02:08:23.707790" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.707647" elapsed="0.000202"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:23.707631" elapsed="0.000241"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.707904" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:23.709519" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:23.709564" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:23.695959" elapsed="0.013628"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.711701" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.710125" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.710108" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.712364" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.711950" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.712900" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.712553" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.712974" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.713151" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.709797" elapsed="0.003379"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.713329" 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-08-10T02:08:23.695379" elapsed="0.018414"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.721553" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.721237" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.730853" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.732699" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:23.732990" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.721709" elapsed="0.011308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.733451" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.733179" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.737444" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.733639" elapsed="0.004559"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.740058" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.738269" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.738250" elapsed="0.001878"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.767274" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:23.767322" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:23.740272" elapsed="0.027090"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:23.769165" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.767443" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.767424" elapsed="0.001820"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:23.769280" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:23.769496" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:23.769540" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:23.720866" elapsed="0.048697"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.771723" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.770112" elapsed="0.001656"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.770094" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.772384" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.771967" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.772930" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.772581" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.773005" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.773179" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.769777" elapsed="0.003427"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.773373" 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-08-10T02:08:23.720236" elapsed="0.053584"/>
</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-08-10T02:08:23.677488" elapsed="0.096387"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.670663" elapsed="0.103320"/>
</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-08-10T02:08:23.784791" 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-08-10T02:08:23.784937" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.784654" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:23.785569" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3948b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:23.785115" elapsed="0.000482"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.786022" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:23.785746" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.786483" 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-08-10T02:08:23.786197" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.786922" 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-08-10T02:08:23.786656" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.787893" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.787094" elapsed="0.000830"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.788427" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.788077" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.788989" 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-08-10T02:08:23.788669" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.789524" 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-08-10T02:08:23.789182" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.790023" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.789715" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.790547" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.790215" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.791211" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3948b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.790741" elapsed="0.000512"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:23.784311" elapsed="0.006997"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.791867" 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-08-10T02:08:23.791474" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.792296" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:23.792052" 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-08-10T02:08:23.800099" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.799788" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.805478" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.805974" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:23.806081" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.800253" elapsed="0.005853"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.806536" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.806263" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.809115" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.806720" 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-08-10T02:08:23.811005" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-08-10T02:08:23.809278" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.809259" elapsed="0.001836"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:23.811236" 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-08-10T02:08:23.811474" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.811324" elapsed="0.000201"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:23.811308" elapsed="0.000240"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.811581" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:23.813211" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:23.813256" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:23.799476" elapsed="0.013803"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.815399" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.813839" elapsed="0.001605"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.813821" elapsed="0.001645"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.816013" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.815609" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.816569" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.816198" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.816643" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.816817" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.813509" elapsed="0.003333"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.816995" 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-08-10T02:08:23.798899" elapsed="0.018559"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.825174" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.824879" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.835758" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.838409" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:23.838806" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.825328" elapsed="0.013516"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.839666" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.839067" elapsed="0.000664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.845243" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.839987" elapsed="0.006342"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.848911" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.846447" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.846421" elapsed="0.002595"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.875252" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:23.875299" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:23.849219" elapsed="0.026104"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:23.877155" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.875419" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.875400" elapsed="0.001836"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:23.877269" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.877482" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:23.877525" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:23.824503" elapsed="0.053045"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.879673" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.878098" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.878080" elapsed="0.001659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.880317" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.879918" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.880873" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.880524" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.880948" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:23.881130" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.877764" elapsed="0.003390"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.881308" 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-08-10T02:08:23.823858" elapsed="0.057916"/>
</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-08-10T02:08:23.781054" elapsed="0.100777"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.774240" elapsed="0.107705"/>
</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-08-10T02:08:23.892788" 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-08-10T02:08:23.892926" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.892649" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:23.893550" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ce00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:23.893104" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.894005" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:23.893728" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.894469" 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-08-10T02:08:23.894181" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:23.894906" 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-08-10T02:08:23.894641" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.895841" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.895079" elapsed="0.000816"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.896405" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.896052" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.896976" 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-08-10T02:08:23.896652" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.897514" 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-08-10T02:08:23.897173" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.898013" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:23.897705" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.898536" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:23.898205" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.900900" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ce00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:23.898729" elapsed="0.002215"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:23.892308" elapsed="0.008692"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.901550" 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-08-10T02:08:23.901150" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.902030" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:23.901786" 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-08-10T02:08:23.909757" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.909460" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.915315" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.915824" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:23.915948" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.909911" elapsed="0.006064"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.916400" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.916131" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.918904" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.916586" elapsed="0.002401"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:23.920855" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:08:23.919056" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.919037" elapsed="0.001907"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:23.921111" 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-08-10T02:08:23.921443" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.921236" elapsed="0.000281"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:23.921213" elapsed="0.000336"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.921594" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:23.923920" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:23.923984" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:23.909132" elapsed="0.014892"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.927116" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.924842" elapsed="0.002336"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.924819" elapsed="0.002390"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.928019" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.927429" elapsed="0.000628"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.928787" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.928278" elapsed="0.000545"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.928891" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:08:23.929160" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.924385" elapsed="0.004806"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.929369" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:23.908582" elapsed="0.021231"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.937571" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:23.937254" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:23.949876" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:23.952451" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:23.952880" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:23.937725" elapsed="0.015192"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.953569" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.953174" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.959167" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:23.953826" 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-08-10T02:08:23.962814" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.960383" elapsed="0.002499"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.960355" elapsed="0.002557"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:23.990037" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:23.990083" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:23.963102" elapsed="0.027004"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:23.991907" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:23.990183" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.990165" elapsed="0.001833"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:23.992031" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:08:23.992228" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:23.992271" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:23.936882" elapsed="0.055412"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:23.994439" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:23.992859" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:23.992841" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.995050" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.994651" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:23.995605" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:23.995236" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:23.995680" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:23.995856" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:23.992526" elapsed="0.003356"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:23.996062" 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-08-10T02:08:23.936252" elapsed="0.060276"/>
</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-08-10T02:08:23.889063" elapsed="0.107521"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.882211" elapsed="0.114484"/>
</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-08-10T02:08:24.007547" 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-08-10T02:08:24.007679" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.007409" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.008284" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c590&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.007857" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.008754" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.008480" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.009193" 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-08-10T02:08:24.008929" elapsed="0.000289"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.009655" 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-08-10T02:08:24.009388" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.010498" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:24.009827" elapsed="0.000701"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.011007" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.010682" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.011585" 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-08-10T02:08:24.011243" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.012130" 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-08-10T02:08:24.011777" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.012655" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.012321" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.013165" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:24.012850" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.013691" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c590&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.013373" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:24.007064" elapsed="0.006722"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.014308" 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-08-10T02:08:24.013933" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.014746" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:24.014510" 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-08-10T02:08:24.022655" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.022356" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.028292" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.028810" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.028913" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.022811" elapsed="0.006127"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.029365" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.029096" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.031871" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.029552" elapsed="0.002370"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:24.034121" elapsed="0.000048"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.032039" elapsed="0.002247"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.032019" elapsed="0.002307"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:24.034547" 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-08-10T02:08:24.034856" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.034672" elapsed="0.000253"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.034650" elapsed="0.000307"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.035001" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:24.037284" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.037369" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.022027" elapsed="0.015376"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.040424" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.038160" elapsed="0.002328"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.038135" elapsed="0.002383"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.041270" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.040720" elapsed="0.000577"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.041819" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.041474" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.041893" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.042069" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.037699" elapsed="0.004395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.042245" 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-08-10T02:08:24.021470" 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-08-10T02:08:24.050483" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.050171" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.056433" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.058743" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:24.059143" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.050636" elapsed="0.008545"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.059774" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.059424" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.065464" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.060054" elapsed="0.006553"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.069238" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.066707" elapsed="0.002582"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.066681" elapsed="0.002630"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.097286" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:24.097349" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:24.069467" elapsed="0.027907"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:24.099237" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.097455" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.097436" elapsed="0.001880"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:24.099366" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.099563" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:24.099607" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.049798" elapsed="0.049831"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.101802" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.100215" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.100197" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.102436" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.102017" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.102970" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.102623" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.103045" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.103221" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.099848" elapsed="0.003398"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.103417" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:24.049172" elapsed="0.054691"/>
</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-08-10T02:08:24.003729" elapsed="0.100190"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:23.996940" elapsed="0.107120"/>
</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-08-10T02:08:24.115009" 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-08-10T02:08:24.115153" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.114872" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.115780" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0353f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.115354" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.116269" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.115957" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.116739" 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-08-10T02:08:24.116464" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.117176" 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-08-10T02:08:24.116912" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.118102" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:24.117366" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.118635" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.118287" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.119189" 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-08-10T02:08:24.118868" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.119722" 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-08-10T02:08:24.119398" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.120251" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.119911" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.120783" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:24.120467" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.121290" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0353f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.120976" 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-08-10T02:08:24.114541" elapsed="0.006863"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.121929" 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-08-10T02:08:24.121551" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.122528" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:24.122107" elapsed="0.000487"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.130312" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.129973" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.135845" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.136414" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.136520" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.130485" elapsed="0.006060"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.136957" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.136707" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.139485" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.137148" 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-08-10T02:08:24.141417" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.139639" elapsed="0.001844"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.139620" elapsed="0.001887"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:24.141650" 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-08-10T02:08:24.141871" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.141740" elapsed="0.000182"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.141724" elapsed="0.000221"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.141976" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:24.143597" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.143642" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.129661" elapsed="0.014004"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.145808" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.144217" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.144199" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.146438" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.146021" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.146972" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.146626" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.147047" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.147224" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.143876" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.147420" 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-08-10T02:08:24.129091" elapsed="0.018776"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.155646" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.155347" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.169132" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.170946" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:24.171240" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.155799" elapsed="0.015467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.171694" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.171442" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.175677" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.171878" elapsed="0.004611"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.178309" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.176562" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.176543" elapsed="0.001853"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.205102" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:24.205149" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:24.178537" elapsed="0.026635"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:24.206975" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.205253" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.205234" elapsed="0.001821"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:24.207089" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.207284" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:24.207327" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.154957" elapsed="0.052409"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.209563" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.207912" elapsed="0.001696"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.207894" elapsed="0.001736"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.210172" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.209776" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.210725" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.210375" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.210800" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:24.210974" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.207583" elapsed="0.003416"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.211153" 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-08-10T02:08:24.154328" elapsed="0.057291"/>
</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-08-10T02:08:24.111170" elapsed="0.100505"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:24.104327" elapsed="0.107458"/>
</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-08-10T02:08:24.222736" 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-08-10T02:08:24.222870" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.222599" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.223474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe3380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.223048" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.223926" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.223651" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.224432" 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-08-10T02:08:24.224137" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.224873" 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-08-10T02:08:24.224607" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.225761" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.225047" elapsed="0.000745"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.226270" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.225945" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.226844" 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-08-10T02:08:24.226520" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.227379" 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-08-10T02:08:24.227036" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.227883" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.227570" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.228430" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.228090" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.228950" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe3380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.228627" 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-08-10T02:08:24.222255" elapsed="0.006791"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.229592" 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-08-10T02:08:24.229193" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.230007" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.229769" 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-08-10T02:08:24.237909" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.237611" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.243373" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.243860" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.243961" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.238067" elapsed="0.005920"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.244448" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.244176" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.246977" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.244635" 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-08-10T02:08:24.248851" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.247099" elapsed="0.001850"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.247080" 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-08-10T02:08:24.249120" 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-08-10T02:08:24.249360" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.249211" elapsed="0.000202"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.249194" elapsed="0.000242"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.249470" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:24.251074" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.251119" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.237278" 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-08-10T02:08:24.253301" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.251699" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.251681" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.253929" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.253533" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.254482" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.254115" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.254557" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.254735" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.251368" elapsed="0.003391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.254914" 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-08-10T02:08:24.236724" elapsed="0.018664"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.263158" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.262856" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.271716" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.273553" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:24.273843" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.263312" elapsed="0.010558"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.274285" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.274031" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.278299" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.274488" elapsed="0.004626"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.280981" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.279191" elapsed="0.001840"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.279172" elapsed="0.001881"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.306807" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:24.306855" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:24.281196" elapsed="0.025682"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:24.308716" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.306957" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.306938" elapsed="0.001866"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:24.308838" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:24.309035" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:24.309079" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.262482" elapsed="0.046619"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.311281" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.309674" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.309655" elapsed="0.001715"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.311917" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.311517" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.312536" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.312128" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.312612" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.312788" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.309320" 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-08-10T02:08:24.312967" 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-08-10T02:08:24.261850" elapsed="0.051589"/>
</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-08-10T02:08:24.218991" elapsed="0.094505"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:24.212052" elapsed="0.101557"/>
</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-08-10T02:08:24.324532" 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-08-10T02:08:24.324671" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.324393" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.325262" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed8a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.324850" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.325738" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.325461" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.326181" 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-08-10T02:08:24.325915" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.326637" 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-08-10T02:08:24.326370" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.327510" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.326809" elapsed="0.000731"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.328017" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.327692" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.328623" 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-08-10T02:08:24.328278" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.329149" 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-08-10T02:08:24.328821" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.329667" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.329357" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.330171" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.329858" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.330700" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed8a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.330380" 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-08-10T02:08:24.324034" elapsed="0.006762"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.331317" 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-08-10T02:08:24.330941" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.331752" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.331513" 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-08-10T02:08:24.341398" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.341082" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.346827" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.347355" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.347469" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.341552" elapsed="0.005943"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.347902" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.347653" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.350437" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.348086" elapsed="0.002403"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:24.352367" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.350556" elapsed="0.001909"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.350538" elapsed="0.001953"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:24.352634" 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-08-10T02:08:24.352860" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.352728" elapsed="0.000182"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.352711" elapsed="0.000221"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.352964" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:24.354589" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.354633" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.340770" elapsed="0.013886"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.356796" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.355194" elapsed="0.001648"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.355177" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.357425" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.357008" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.357957" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.357611" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.358036" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:08:24.358247" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.354865" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.358443" 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-08-10T02:08:24.340193" elapsed="0.018695"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.366648" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.366351" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.375074" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.376917" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:24.377215" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.366800" elapsed="0.010441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.377679" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.377418" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.381687" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.377864" elapsed="0.004607"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.384308" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.382542" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.382523" elapsed="0.001874"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.411504" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:24.411551" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:24.384536" elapsed="0.027038"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:24.413387" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.411655" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.411636" elapsed="0.001833"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:24.413503" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.413697" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:24.413741" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.365963" elapsed="0.047800"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.415939" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.414310" elapsed="0.001675"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.414292" elapsed="0.001715"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.416601" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.416178" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.417135" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.416788" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.417210" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.417406" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.413980" 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-08-10T02:08:24.417586" 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-08-10T02:08:24.365350" elapsed="0.052681"/>
</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-08-10T02:08:24.320720" elapsed="0.097372"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:24.313871" elapsed="0.104331"/>
</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-08-10T02:08:24.429103" 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-08-10T02:08:24.429250" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.428967" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.429859" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.429450" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.430315" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.430036" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.430785" 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-08-10T02:08:24.430518" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.431224" 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-08-10T02:08:24.430958" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.432097" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.431415" elapsed="0.000713"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.432669" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.432315" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.433230" 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-08-10T02:08:24.432908" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.433766" 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-08-10T02:08:24.433438" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.434268" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.433956" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.434794" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.434478" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.435303" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.434987" 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-08-10T02:08:24.428632" elapsed="0.006784"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.435941" 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-08-10T02:08:24.435563" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.436410" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.436122" 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-08-10T02:08:24.444270" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.443961" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.449664" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.450153" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.450256" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.444444" elapsed="0.005837"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.450715" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.450465" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.453235" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.450900" elapsed="0.002386"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:24.455107" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.453372" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.453352" elapsed="0.001880"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:24.455391" 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-08-10T02:08:24.455616" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.455482" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.455466" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.455722" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:24.457385" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.457431" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.443650" elapsed="0.013803"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.459589" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.457991" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.457974" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.460208" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.459802" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.460766" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.460418" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.460841" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.461017" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.457666" elapsed="0.003376"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.461195" 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-08-10T02:08:24.443086" elapsed="0.018573"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.469516" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.469201" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.478939" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.480777" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:24.481068" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.469670" elapsed="0.011427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.481531" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.481256" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.485525" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.481717" elapsed="0.004566"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.488109" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.486370" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.486350" elapsed="0.001842"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.515479" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:24.515526" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:24.488346" elapsed="0.027204"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:24.517377" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.515630" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.515611" elapsed="0.001848"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:24.517492" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:24.517687" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:24.517730" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.468828" elapsed="0.048925"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.519916" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.518299" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.518281" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.520563" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.520130" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.521097" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.520751" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.521172" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:24.521364" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.517968" elapsed="0.003423"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.521546" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:24.468189" elapsed="0.053803"/>
</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-08-10T02:08:24.425293" elapsed="0.096755"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:24.418465" elapsed="0.103692"/>
</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-08-10T02:08:24.533017" 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-08-10T02:08:24.533163" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.532881" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.533786" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9d6c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.533360" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.534239" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.533963" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.534704" 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-08-10T02:08:24.534436" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.535144" 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-08-10T02:08:24.534879" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.536011" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.535318" elapsed="0.000724"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.536555" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.536194" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.537121" 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-08-10T02:08:24.536799" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.537657" 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-08-10T02:08:24.537312" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.538157" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.537847" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.538684" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.538367" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.539192" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9d6c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.538877" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:24.532542" elapsed="0.006747"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.539830" 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-08-10T02:08:24.539450" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.540279" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.540009" 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-08-10T02:08:24.548374" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.548021" elapsed="0.000381"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.553912" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.554430" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.554532" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.548532" elapsed="0.006026"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.554964" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.554714" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.557529" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.555151" elapsed="0.002431"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:24.559397" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.557649" elapsed="0.001848"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.557631" elapsed="0.001891"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:24.559663" 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-08-10T02:08:24.559885" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.559752" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.559736" elapsed="0.000221"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.559989" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:24.561624" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.561669" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.547708" elapsed="0.013984"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.563811" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.562230" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.562212" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.564465" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.564023" elapsed="0.000468"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.565002" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.564651" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.565076" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.565253" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.561902" elapsed="0.003376"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.565450" 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-08-10T02:08:24.547129" elapsed="0.018769"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.573682" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.573387" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.583738" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.585556" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:24.585844" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.573836" elapsed="0.012035"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.586283" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.586030" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.590288" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.586489" elapsed="0.004595"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.592940" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.591157" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.591137" elapsed="0.001874"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.618914" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:24.618961" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:24.593149" elapsed="0.025836"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:24.620791" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.619065" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.619046" elapsed="0.001825"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:24.620905" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.621100" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:24.621144" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.573000" elapsed="0.048167"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.623300" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.621732" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.621714" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.623924" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.623529" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.624538" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.624110" elapsed="0.000455"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.624614" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.624791" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.621401" elapsed="0.003415"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.624971" 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-08-10T02:08:24.572388" elapsed="0.053049"/>
</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-08-10T02:08:24.529250" elapsed="0.096244"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:24.522421" elapsed="0.103182"/>
</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-08-10T02:08:24.636407" 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-08-10T02:08:24.636545" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:24.636227" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.637149" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.636725" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.637623" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.637328" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.638066" 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-08-10T02:08:24.637800" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.638526" 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-08-10T02:08:24.638238" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.639470" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:24.638700" elapsed="0.000800"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.639982" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.639653" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.640600" 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-08-10T02:08:24.640216" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.641127" 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-08-10T02:08:24.640800" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.641654" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.641318" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.642165" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.641849" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.642855" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.642376" elapsed="0.000522"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:24.635902" elapsed="0.007052"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.643509" 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-08-10T02:08:24.643104" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.643931" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;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-08-10T02:08:24.643691" 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-08-10T02:08:24.651725" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.651429" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.657286" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.657809" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.657913" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.651880" elapsed="0.006059"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.658366" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.658098" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.660891" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.658552" elapsed="0.002390"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:24.662804" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.661050" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.661030" elapsed="0.001864"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:24.663035" 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-08-10T02:08:24.663257" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.663125" elapsed="0.000182"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.663108" elapsed="0.000238"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.663381" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:24.665018" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.665063" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.651099" elapsed="0.013987"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.667207" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.665645" elapsed="0.001606"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.665626" elapsed="0.001647"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.667827" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.667433" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.668391" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.668012" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.668465" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.668642" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.665299" elapsed="0.003368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.668820" 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-08-10T02:08:24.650546" elapsed="0.018720"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.677092" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.676797" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.685639" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.687462" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:24.687748" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.677246" elapsed="0.010529"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.688379" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.687935" elapsed="0.000491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.692252" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.688574" elapsed="0.004612"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.695007" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.693263" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.693243" elapsed="0.001836"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.717801" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:24.717848" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:24.695220" elapsed="0.022651"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:24.719665" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.717951" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.717932" elapsed="0.001813"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:24.719779" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:24.719972" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:24.720016" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.676415" elapsed="0.043623"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.722205" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.720632" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.720614" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.722831" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.722434" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.723378" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.723016" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.723454" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.723630" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.720256" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.723809" 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-08-10T02:08:24.675743" elapsed="0.048509"/>
</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-08-10T02:08:24.632686" elapsed="0.091674"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:24.625844" elapsed="0.098636"/>
</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-08-10T02:08:24.735270" 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-08-10T02:08:24.735425" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:24.735133" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.736023" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33d30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.735604" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.736525" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.736199" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.736968" 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-08-10T02:08:24.736702" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.737423" 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-08-10T02:08:24.737141" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.738361" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:24.737597" elapsed="0.000795"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.738873" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.738547" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.739445" 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-08-10T02:08:24.739105" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.739965" 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-08-10T02:08:24.739639" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.740529" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.740156" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.741049" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.740726" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.743418" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33d30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.741245" elapsed="0.002219"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:24.734804" elapsed="0.008717"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.744056" 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-08-10T02:08:24.743672" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.744533" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;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-08-10T02:08:24.744237" 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-08-10T02:08:24.752208" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.751913" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.757801" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.758302" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.758440" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.752407" elapsed="0.006059"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.758874" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.758625" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.761620" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.759058" elapsed="0.002634"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:24.764265" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.761834" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.761806" elapsed="0.002638"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:24.764643" 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-08-10T02:08:24.764962" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.764778" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.764753" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.765108" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:24.767377" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.767441" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.751603" elapsed="0.015869"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.770133" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.768222" elapsed="0.001956"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.768197" elapsed="0.002002"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.770754" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.770359" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.771288" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.770937" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.771379" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:24.771556" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.767765" elapsed="0.003815"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.771732" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:24.751037" 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-08-10T02:08:24.779896" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.779602" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.790484" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.792863" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:24.793265" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.780050" elapsed="0.013251"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.793899" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.793548" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.799501" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.794158" elapsed="0.006475"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.802653" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.800733" elapsed="0.001968"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.800707" elapsed="0.002015"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.825006" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:24.825053" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:24.802862" elapsed="0.022214"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:24.826862" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.825156" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.825137" elapsed="0.001805"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:24.826975" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.827169" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:24.827212" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.779214" elapsed="0.048020"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.829429" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.827796" elapsed="0.001678"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.827778" elapsed="0.001718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.830038" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.829642" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.830598" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.830225" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.830674" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:24.830850" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.827465" 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-08-10T02:08:24.831029" 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-08-10T02:08:24.778606" elapsed="0.052920"/>
</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-08-10T02:08:24.731555" elapsed="0.100027"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:24.724721" elapsed="0.106971"/>
</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-08-10T02:08:24.842542" 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-08-10T02:08:24.842675" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.842405" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.843266" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33880&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.842854" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.843788" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.843508" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.844231" 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-08-10T02:08:24.843964" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.844746" 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-08-10T02:08:24.844465" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.845639" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.844921" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.846151" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.845823" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.846724" 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-08-10T02:08:24.846401" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.847245" 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-08-10T02:08:24.846916" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.847764" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.847452" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.848295" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.847957" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.848871" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33880&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.848550" 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-08-10T02:08:24.842064" elapsed="0.006903"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.849518" 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-08-10T02:08:24.849117" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.849933" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.849696" 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-08-10T02:08:24.857920" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.857562" elapsed="0.000386"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.864513" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.865009" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.865168" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.858080" elapsed="0.007132"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.865829" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.865476" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.869388" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.866091" elapsed="0.003370"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:24.872038" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.869604" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.869577" elapsed="0.002587"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:24.872411" 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-08-10T02:08:24.872730" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.872543" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.872520" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.872877" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:24.874620" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.874665" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.857224" elapsed="0.017464"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.876826" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.875230" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.875212" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.877454" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.877042" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.877982" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.877638" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.878057" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:08:24.878235" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.874899" elapsed="0.003361"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.878430" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:24.856671" elapsed="0.022200"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.886637" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.886328" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.896688" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.900328" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:24.901075" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.886790" elapsed="0.014345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.902093" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.901527" elapsed="0.000667"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.907873" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.902549" elapsed="0.006147"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.910537" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.908778" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.908758" elapsed="0.001851"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.936533" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:24.936581" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:24.910752" elapsed="0.025852"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:24.938437" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.936684" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.936665" elapsed="0.001852"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:24.938551" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.938746" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:24.938790" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.885959" elapsed="0.052853"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.940970" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.939385" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.939366" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.941609" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.941189" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.942145" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.941795" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.942218" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:24.942412" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.939034" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.942591" 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-08-10T02:08:24.885348" elapsed="0.057691"/>
</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-08-10T02:08:24.838791" elapsed="0.104303"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:24.831934" elapsed="0.111275"/>
</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-08-10T02:08:24.954134" 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-08-10T02:08:24.954276" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.953996" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:24.954878" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33ab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:24.954471" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.955347" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:24.955055" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.955791" 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-08-10T02:08:24.955525" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:24.956226" 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-08-10T02:08:24.955962" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:24.957094" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.956435" elapsed="0.000690"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.957632" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.957278" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.958192" 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-08-10T02:08:24.957866" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.958727" 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-08-10T02:08:24.958402" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.959226" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.958918" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.959755" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:24.959440" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.960264" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33ab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:24.959949" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:24.953659" elapsed="0.006718"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.960944" 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-08-10T02:08:24.960558" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.961387" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:24.961123" 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-08-10T02:08:24.969365" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.969049" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:24.974556" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:24.975055" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:24.975159" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.969521" elapsed="0.005663"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.975611" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.975360" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.978657" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:24.975796" elapsed="0.002933"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:24.981269" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:24.978823" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.978798" elapsed="0.002619"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:24.981660" 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-08-10T02:08:24.981972" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:24.981787" elapsed="0.000255"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:24.981765" elapsed="0.000309"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.982118" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:24.984398" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:24.984520" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:24.968730" elapsed="0.015826"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:24.986902" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:24.985311" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:24.985293" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.987535" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.987122" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.988068" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:24.987720" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:24.988142" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:24.988318" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:24.984856" elapsed="0.003504"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:24.988527" 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-08-10T02:08:24.968117" elapsed="0.020861"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:24.996718" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:24.996411" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:25.005472" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:25.007995" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:25.008415" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:24.996871" elapsed="0.011618"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.009076" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.008714" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.014668" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.009359" elapsed="0.006390"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.018059" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.015851" elapsed="0.002257"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.015824" elapsed="0.002306"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:25.089203" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:25.089268" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:25.018270" elapsed="0.071023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:25.091294" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:25.089446" elapsed="0.001924"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.089410" elapsed="0.001989"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:25.091438" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:08:25.091662" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:25.091707" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:24.996021" elapsed="0.095708"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.094017" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.092404" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.092385" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.094723" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.094238" elapsed="0.000512"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.095261" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.094910" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:25.095352" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:25.095535" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:25.091983" elapsed="0.003577"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:25.095714" 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-08-10T02:08:24.995409" elapsed="0.100774"/>
</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-08-10T02:08:24.950365" elapsed="0.145874"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:24.943508" elapsed="0.152874"/>
</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-08-10T02:08:25.107364" 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-08-10T02:08:25.107532" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:25.107202" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.108108" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8bba0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:25.107711" elapsed="0.000425"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.108617" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:25.108287" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.109060" 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-08-10T02:08:25.108792" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.109525" 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-08-10T02:08:25.109239" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:25.110262" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:25.109700" elapsed="0.000591"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.110794" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.110464" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.111388" 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-08-10T02:08:25.111052" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.111900" 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-08-10T02:08:25.111578" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.112412" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:25.112087" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.112950" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:25.112634" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.113614" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8bba0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.113142" elapsed="0.000514"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:25.106871" elapsed="0.006841"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.114239" 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-08-10T02:08:25.113858" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.114675" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:25.114435" 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-08-10T02:08:25.122426" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:25.122103" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:25.128254" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:25.128870" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:25.128975" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:25.122581" elapsed="0.006420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.129436" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.129164" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.131942" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.129622" elapsed="0.002371"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:25.133831" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:25.132061" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.132042" elapsed="0.001880"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:25.134066" 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-08-10T02:08:25.134291" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:25.134157" elapsed="0.000236"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:25.134141" elapsed="0.000277"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.134451" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:08:25.136058" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:25.136104" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:25.121788" elapsed="0.014339"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.138267" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.136697" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.136680" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.138889" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.138495" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.139439" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.139075" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:25.139515" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:25.139691" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:25.136353" elapsed="0.003363"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:25.139868" 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-08-10T02:08:25.121213" elapsed="0.019103"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.148082" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:25.147788" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:25.158404" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:25.160378" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:25.160717" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:25.148235" elapsed="0.012510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.161156" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.160903" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.165005" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.161359" elapsed="0.004431"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.167620" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.165862" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.165843" elapsed="0.001849"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:25.191978" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:25.192025" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:25.167830" elapsed="0.024218"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:25.193859" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:25.192128" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.192109" elapsed="0.001830"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:25.193973" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:25.194166" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:25.194210" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:25.147413" elapsed="0.046819"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.196375" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.194797" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.194779" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.197018" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.196616" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.197583" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.197213" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:25.197658" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:25.197834" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:25.194465" elapsed="0.003394"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:25.198013" 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-08-10T02:08:25.146777" elapsed="0.051726"/>
</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-08-10T02:08:25.103617" elapsed="0.094943"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:25.096725" elapsed="0.101948"/>
</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-08-10T02:08:25.209522" 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-08-10T02:08:25.209656" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:25.209381" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.210235" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec33b290&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:25.209834" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.210707" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:25.210430" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.211148" 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-08-10T02:08:25.210882" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.211613" 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-08-10T02:08:25.211320" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:25.212445" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:25.211784" elapsed="0.000692"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.212990" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.212657" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.213576" 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-08-10T02:08:25.213225" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.214090" 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-08-10T02:08:25.213769" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.214611" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:25.214279" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.215123" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:25.214805" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.215658" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec33b290&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.215317" 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-08-10T02:08:25.209033" elapsed="0.006721"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.216280" 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-08-10T02:08:25.215899" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.216742" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:25.216477" 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-08-10T02:08:25.224646" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:25.224299" elapsed="0.000381"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:25.229801" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:25.230300" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:25.230426" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:25.224812" elapsed="0.005641"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.230863" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.230613" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.233598" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.231049" elapsed="0.002621"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:25.236192" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:25.233765" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.233740" elapsed="0.002577"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:25.236597" 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-08-10T02:08:25.236918" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:25.236731" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:25.236708" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.237067" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:25.239327" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:25.239412" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:25.223984" elapsed="0.015461"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.242112" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.240195" elapsed="0.001964"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.240171" elapsed="0.002010"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.242736" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.242326" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.243266" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.242921" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:25.243358" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:25.243538" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:25.239739" 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-08-10T02:08:25.243717" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:25.223433" elapsed="0.020727"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.251883" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:25.251589" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:25.259953" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:25.262539" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:25.262936" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:25.252037" elapsed="0.010936"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.263573" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.263196" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.270932" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.263834" elapsed="0.007908"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.273580" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.271814" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.271795" elapsed="0.001855"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:25.300801" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:25.300848" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:25.273790" elapsed="0.027082"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:25.302687" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:25.300957" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.300932" elapsed="0.001835"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:25.302800" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:25.302994" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:25.303038" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:25.251197" elapsed="0.051863"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.305230" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.303631" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.303613" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.305864" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.305461" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.306418" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.306050" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:25.306493" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:25.306671" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:25.303279" elapsed="0.003417"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:25.306849" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:25.250584" elapsed="0.056711"/>
</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-08-10T02:08:25.205751" elapsed="0.101619"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:25.198924" elapsed="0.108559"/>
</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-08-10T02:08:25.318405" 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-08-10T02:08:25.318561" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:25.318251" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.319130" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec349d00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:25.318739" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.319606" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:25.319307" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.320051" 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-08-10T02:08:25.319784" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.320512" 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-08-10T02:08:25.320226" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:25.321274" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:25.320697" elapsed="0.000607"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.321804" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.321476" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.322376" 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-08-10T02:08:25.322039" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.322891" 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-08-10T02:08:25.322568" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.323406" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:25.323080" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.323915" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:25.323600" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.324442" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec349d00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.324107" 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-08-10T02:08:25.317922" elapsed="0.006618"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.325104" 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-08-10T02:08:25.324713" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.325540" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:25.325281" 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-08-10T02:08:25.333478" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:25.333161" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:25.338757" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:25.339256" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:25.339383" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:25.333635" elapsed="0.005775"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.339819" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.339569" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.342931" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.340004" elapsed="0.002999"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:25.345612" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:25.343097" elapsed="0.002609"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.343072" elapsed="0.002668"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:25.345938" 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-08-10T02:08:25.346299" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:25.346110" elapsed="0.000286"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:25.346086" elapsed="0.000344"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.346475" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:25.348781" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:25.348843" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:25.332843" elapsed="0.016031"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.351155" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.349586" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.349568" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.351773" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.351380" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.352307" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.351958" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:25.352401" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:25.352578" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:25.349173" elapsed="0.003430"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:25.352771" 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-08-10T02:08:25.332243" elapsed="0.020978"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.361021" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:25.360726" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:25.369087" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:25.371650" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:25.372045" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:25.361182" elapsed="0.010899"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.372705" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.372307" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.378078" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;919000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;417000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;7&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-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;402000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;26&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;397000000&lt;/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;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;6&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&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;27&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;398000000&lt;/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;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&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;28&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;455000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;506000000&lt;/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;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;10&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;12&lt;/second&gt;&lt;nanosecond&gt;913000000&lt;/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;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;408000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.372971" elapsed="0.005889"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.380705" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.378931" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.378912" elapsed="0.001863"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:25.405697" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:25.405744" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:25.380913" elapsed="0.024854"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:25.407552" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:25.405848" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.405829" elapsed="0.001803"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:25.407665" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:25.407860" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:25.407903" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:25.360306" elapsed="0.047619"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:25.410114" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:25.408495" elapsed="0.001665"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:25.408477" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.410742" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.410328" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.411285" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:25.410930" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:25.411384" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:25.411564" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:25.408143" elapsed="0.003446"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:25.411745" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:25.359692" elapsed="0.052499"/>
</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-08-10T02:08:25.314631" elapsed="0.097616"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:25.307757" elapsed="0.104619"/>
</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-08-10T02:08:25.413572" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.413308" 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-08-10T02:08:25.417012" 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-08-10T02:08:25.417147" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:25.416876" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.417727" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:25.417323" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.418178" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:25.417904" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.418637" 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-08-10T02:08:25.418368" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.419078" 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-08-10T02:08:25.418811" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:25.419836" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:25.419250" elapsed="0.000616"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.420330" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.420019" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.420907" 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-08-10T02:08:25.420579" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.421429" 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-08-10T02:08:25.421097" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.421917" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.421619" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.422427" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.422108" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.422925" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.422622" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:25.416522" elapsed="0.006498"/>
</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-08-10T02:08:25.424483" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:25.424065" elapsed="0.000476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.424968" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:25.424717" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.425465" level="INFO">${xml} = &lt;Element 'input' at 0x7777ecbef150&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-08-10T02:08:25.425172" elapsed="0.000320"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:25.425913" 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-08-10T02:08:25.425640" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.426479" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ecbee4d0&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-08-10T02:08:25.426103" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.427003" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ee532fc0&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-08-10T02:08:25.426655" elapsed="0.000376"/>
</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-08-10T02:08:25.427178" 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-08-10T02:08:25.427608" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:25.428014" elapsed="0.000244"/>
</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-08-10T02:08:25.428419" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:25.428829" 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-08-10T02:08:25.429211" 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-08-10T02:08:25.429647" elapsed="0.000332"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:25.430125" elapsed="0.000341"/>
</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-08-10T02:08:25.430614" elapsed="0.000327"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:25.431385" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbe2f20&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-08-10T02:08:25.431095" 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-08-10T02:08:25.431561" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:25.432381" 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-08-10T02:08:25.431954" elapsed="0.000498"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:25.433075" 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-08-10T02:08:25.432598" elapsed="0.000508"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:25.975398" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:25.975601" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:25.975861" 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-08-10T02:08:25.433236" elapsed="0.542686"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.981368" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.976417" elapsed="0.005054"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ecbee070&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-08-10T02:08:25.423678" elapsed="0.557933"/>
</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-08-10T02:08:25.423167" elapsed="0.558677"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-08-10T02:08:25.413180" elapsed="0.568750"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.983063" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:25.982506" elapsed="0.000655"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:25.988244" 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-08-10T02:08:25.988435" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:25.988098" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.989079" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1bc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:25.988616" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.989563" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:25.989260" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.990004" 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-08-10T02:08:25.989737" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:25.990479" 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-08-10T02:08:25.990187" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:25.991278" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:25.990652" elapsed="0.000656"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.991810" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.991484" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.992305" 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-08-10T02:08:25.992001" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.992826" 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-08-10T02:08:25.992518" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.993368" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.993050" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.993867" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.993566" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.994457" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1bc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:25.994058" elapsed="0.000441"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:25.987738" elapsed="0.006815"/>
</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-08-10T02:08:25.995842" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:25.995591" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:25.996282" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:08:25.996037" elapsed="0.000355"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.996809" level="INFO">${xml} = &lt;Element 'input' at 0x7777ecbe2110&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-08-10T02:08:25.996537" elapsed="0.000300"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:25.997260" 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-08-10T02:08:25.996995" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.997827" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ecbe3920&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-08-10T02:08:25.997468" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:25.998371" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfff05e0&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-08-10T02:08:25.998002" 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-08-10T02:08:25.998546" elapsed="0.000400"/>
</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-08-10T02:08:25.999100" elapsed="0.000277"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:25.999527" elapsed="0.000240"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:25.999913" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:26.000295" 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-08-10T02:08:26.000689" elapsed="0.000231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:26.001095" elapsed="0.000345"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:26.001584" elapsed="0.000325"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:26.002052" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:26.002814" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfff2ed0&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-08-10T02:08:26.002549" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:26.002986" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:26.003808" 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-08-10T02:08:26.003390" elapsed="0.000488"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:26.004489" 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-08-10T02:08:26.004022" elapsed="0.000497"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:26.476091" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:26.476327" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:26.476555" 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-08-10T02:08:26.004648" elapsed="0.471942"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.480355" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:26.476926" elapsed="0.003499"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ecbe1bc0&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-08-10T02:08:25.995184" elapsed="0.485336"/>
</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-08-10T02:08:25.994699" elapsed="0.485902"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-08-10T02:08:25.982181" elapsed="0.498476"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.481418" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:26.481013" elapsed="0.000470"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:26.487320" 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-08-10T02:08:26.487514" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:26.487168" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:26.488139" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff11c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:26.487701" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:26.488632" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:26.488323" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:26.489086" 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-08-10T02:08:26.488812" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:26.489581" 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-08-10T02:08:26.489282" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:26.490404" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:26.489758" elapsed="0.000678"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.491124" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:26.490598" elapsed="0.000569"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.491650" 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-08-10T02:08:26.491320" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.492154" 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-08-10T02:08:26.491843" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.492663" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:26.492361" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.493162" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:26.492858" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.493739" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff11c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:26.493428" 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-08-10T02:08:26.486778" elapsed="0.007058"/>
</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-08-10T02:08:26.495157" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:26.494903" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.495733" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:08:26.495481" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:26.496211" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfff3010&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-08-10T02:08:26.495937" elapsed="0.000302"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:26.496680" 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-08-10T02:08:26.496406" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:26.497263" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfff3510&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-08-10T02:08:26.496872" elapsed="0.000423"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:26.497824" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfff1e90&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-08-10T02:08:26.497470" elapsed="0.000381"/>
</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-08-10T02:08:26.497996" elapsed="0.000267"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:26.498431" 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-08-10T02:08:26.498840" elapsed="0.000236"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:26.499221" elapsed="0.000254"/>
</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-08-10T02:08:26.499621" 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-08-10T02:08:26.500004" 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-08-10T02:08:26.500401" elapsed="0.000332"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:26.500878" elapsed="0.000319"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:26.501390" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:26.502143" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9e7f0&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-08-10T02:08:26.501877" 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-08-10T02:08:26.502318" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:26.503148" 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-08-10T02:08:26.502730" elapsed="0.000526"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:26.503881" 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-08-10T02:08:26.503424" elapsed="0.000487"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:26.976881" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:26.977083" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:26.977389" 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-08-10T02:08:26.504042" elapsed="0.473440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.983048" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:26.977945" elapsed="0.005200"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfff11c0&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-08-10T02:08:26.494503" elapsed="0.488779"/>
</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-08-10T02:08:26.493985" elapsed="0.489460"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-08-10T02:08:26.480825" elapsed="0.502705"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.984688" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:26.984061" 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-08-10T02:08:26.989050" 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-08-10T02:08:26.989218" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:26.988901" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:26.989878" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fb50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:26.989417" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:26.990364" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:26.990059" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:26.990811" 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-08-10T02:08:26.990543" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:26.991250" 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-08-10T02:08:26.990985" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:26.992103" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:26.991441" elapsed="0.000692"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.992693" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:26.992359" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.993194" 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-08-10T02:08:26.992888" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.993740" 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-08-10T02:08:26.993400" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.994238" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:26.993936" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.994786" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:26.994474" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.995285" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fb50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:26.994982" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:26.988532" elapsed="0.006879"/>
</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-08-10T02:08:26.996755" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:26.996497" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:26.997204" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:26.996957" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:26.997736" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec0345e0&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-08-10T02:08:26.997425" elapsed="0.000340"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:26.998182" 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-08-10T02:08:26.997910" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:26.998771" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec036570&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-08-10T02:08:26.998393" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:26.999462" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec0375b0&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-08-10T02:08:26.998945" elapsed="0.000545"/>
</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-08-10T02:08:26.999639" 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-08-10T02:08:27.000062" elapsed="0.000262"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:27.000495" elapsed="0.000245"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:27.000939" elapsed="0.000249"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:27.001358" elapsed="0.000295"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:27.001801" 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-08-10T02:08:27.002188" elapsed="0.000368"/>
</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-08-10T02:08:27.002702" elapsed="0.000339"/>
</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-08-10T02:08:27.003191" elapsed="0.000356"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:27.003972" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0362a0&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-08-10T02:08:27.003699" 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-08-10T02:08:27.004148" elapsed="0.000268"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:27.005024" 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-08-10T02:08:27.004568" elapsed="0.000531"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:27.005812" 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-08-10T02:08:27.005244" elapsed="0.000601"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:27.478493" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:27.478778" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:27.479024" 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-08-10T02:08:27.006053" elapsed="0.473033"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.484148" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:27.479543" elapsed="0.004702"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfc9fb50&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-08-10T02:08:26.996060" elapsed="0.488357"/>
</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-08-10T02:08:26.995563" elapsed="0.488978"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-08-10T02:08:26.983776" elapsed="0.500849"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.485794" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:27.485152" elapsed="0.000746"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:27.491848" 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-08-10T02:08:27.491997" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:27.491703" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:27.492615" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:27.492177" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:27.493072" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:27.492795" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:27.493539" 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-08-10T02:08:27.493253" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:27.493992" 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-08-10T02:08:27.493711" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:27.495001" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:27.494166" elapsed="0.000866"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.495533" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:27.495191" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.496029" 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-08-10T02:08:27.495726" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.496549" 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-08-10T02:08:27.496222" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.497033" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:27.496737" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.497543" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:27.497223" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.498086" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:27.497770" 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-08-10T02:08:27.491346" elapsed="0.006836"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.499486" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:27.499223" elapsed="0.000357"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.499962" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:27.499720" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:27.500447" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec3e4a90&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-08-10T02:08:27.500162" elapsed="0.000313"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:27.500877" 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-08-10T02:08:27.500618" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:27.501451" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec3e45e0&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-08-10T02:08:27.501065" elapsed="0.000415"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:27.502004" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec3e4cc0&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-08-10T02:08:27.501627" elapsed="0.000403"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:27.502173" 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-08-10T02:08:27.502601" elapsed="0.000254"/>
</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-08-10T02:08:27.503003" elapsed="0.000233"/>
</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-08-10T02:08:27.503396" 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-08-10T02:08:27.503778" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:27.504157" elapsed="0.000250"/>
</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-08-10T02:08:27.504552" elapsed="0.000338"/>
</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-08-10T02:08:27.505035" elapsed="0.000351"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:27.505531" elapsed="0.000359"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:27.506306" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbe2070&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-08-10T02:08:27.506041" 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-08-10T02:08:27.506498" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:27.508816" 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-08-10T02:08:27.506883" elapsed="0.002063"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:27.509623" 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-08-10T02:08:27.509101" elapsed="0.000556"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:27.978803" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:27.978978" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:27.979210" 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-08-10T02:08:27.509802" elapsed="0.469467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.984137" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:27.979675" elapsed="0.004559"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec3e4130&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-08-10T02:08:27.498835" elapsed="0.485566"/>
</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-08-10T02:08:27.498329" elapsed="0.486197"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-08-10T02:08:27.484868" elapsed="0.499741"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.985706" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:27.985109" elapsed="0.000694"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:27.991183" 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-08-10T02:08:27.991387" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:27.990993" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:27.992189" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:27.991638" elapsed="0.000590"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:27.992845" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:27.992461" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:27.993484" 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-08-10T02:08:27.993088" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:27.994131" 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-08-10T02:08:27.993724" elapsed="0.000444"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:27.995432" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:27.994464" elapsed="0.001017"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.996152" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:27.995702" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.996872" 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-08-10T02:08:27.996447" elapsed="0.000482"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.997592" 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-08-10T02:08:27.997137" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.998330" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:27.997856" elapsed="0.000561"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.999052" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:27.998627" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:27.999657" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:27.999352" 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-08-10T02:08:27.990517" elapsed="0.009234"/>
</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-08-10T02:08:28.001035" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:28.000790" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.001499" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:28.001238" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:28.001965" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec035120&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-08-10T02:08:28.001700" elapsed="0.000323"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:28.002448" 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-08-10T02:08:28.002170" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:28.003018" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec035210&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-08-10T02:08:28.002643" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:28.003772" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec0378d0&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-08-10T02:08:28.003195" elapsed="0.000628"/>
</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-08-10T02:08:28.004006" 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-08-10T02:08:28.004496" 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-08-10T02:08:28.004917" 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-08-10T02:08:28.005307" 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-08-10T02:08:28.005713" 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-08-10T02:08:28.006132" 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-08-10T02:08:28.006540" elapsed="0.000342"/>
</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-08-10T02:08:28.007029" elapsed="0.000359"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:28.007535" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:28.008289" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9d3a0&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-08-10T02:08:28.008019" 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-08-10T02:08:28.008483" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:28.009345" 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-08-10T02:08:28.008881" elapsed="0.000543"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:28.010071" 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-08-10T02:08:28.009570" elapsed="0.000538"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:28.479411" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:28.479680" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:28.479899" 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-08-10T02:08:28.010240" elapsed="0.469719"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.484817" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:28.480328" elapsed="0.004586"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec036de0&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-08-10T02:08:28.000400" elapsed="0.484642"/>
</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-08-10T02:08:27.999897" elapsed="0.485262"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-08-10T02:08:27.984828" elapsed="0.500413"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.486431" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:28.485815" 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-08-10T02:08:28.492634" 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-08-10T02:08:28.492764" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:28.492496" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:28.493366" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9dd00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:28.492945" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:28.493824" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:28.493546" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:28.494288" 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-08-10T02:08:28.494001" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:28.494750" 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-08-10T02:08:28.494481" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:28.495766" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:28.494924" elapsed="0.000873"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.496270" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:28.495955" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.496787" 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-08-10T02:08:28.496482" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.497322" 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-08-10T02:08:28.496977" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.497826" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:28.497529" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.498362" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:28.498018" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.498863" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9dd00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:28.498560" 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-08-10T02:08:28.492139" elapsed="0.006819"/>
</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-08-10T02:08:28.500231" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:28.499986" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.500732" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:28.500489" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:28.501201" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfff3ba0&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-08-10T02:08:28.500935" elapsed="0.000294"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:28.501639" 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-08-10T02:08:28.501388" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:28.502201" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfff29d0&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-08-10T02:08:28.501827" elapsed="0.000401"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:28.502787" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfff33d0&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-08-10T02:08:28.502419" elapsed="0.000395"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:28.502957" elapsed="0.000258"/>
</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-08-10T02:08:28.503380" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:28.503784" elapsed="0.000233"/>
</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-08-10T02:08:28.504161" elapsed="0.000249"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:28.504554" elapsed="0.000232"/>
</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-08-10T02:08:28.504929" elapsed="0.000227"/>
</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-08-10T02:08:28.505298" 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-08-10T02:08:28.505805" elapsed="0.000344"/>
</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-08-10T02:08:28.506322" elapsed="0.000455"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:28.507199" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ee530d10&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-08-10T02:08:28.506928" 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-08-10T02:08:28.507388" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:28.508249" 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-08-10T02:08:28.507776" elapsed="0.000610"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:28.509041" 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-08-10T02:08:28.508532" elapsed="0.000540"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:28.981032" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:28.981275" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:28.981612" 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-08-10T02:08:28.509200" elapsed="0.472477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.987103" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:28.982186" elapsed="0.005019"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfc9dd00&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-08-10T02:08:28.499601" elapsed="0.487782"/>
</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-08-10T02:08:28.499103" elapsed="0.488417"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-08-10T02:08:28.485527" elapsed="0.502080"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.988787" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:28.988158" 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-08-10T02:08:28.993698" 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-08-10T02:08:28.993873" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:28.993543" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:28.994568" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec342700&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:28.994056" elapsed="0.000541"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:28.995043" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:28.994753" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:28.995512" 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-08-10T02:08:28.995223" elapsed="0.000376"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:28.996024" 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-08-10T02:08:28.995751" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:28.997063" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:28.996201" elapsed="0.000893"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.997609" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:28.997258" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.998104" 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-08-10T02:08:28.997801" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.998659" 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-08-10T02:08:28.998293" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.999153" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:28.998853" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:28.999665" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:28.999361" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.000159" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec342700&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:28.999857" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:28.993153" elapsed="0.007101"/>
</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-08-10T02:08:29.001594" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:29.001321" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.002240" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:29.001799" elapsed="0.000504"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:29.002767" level="INFO">${xml} = &lt;Element 'input' at 0x7777ecb8b510&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-08-10T02:08:29.002466" elapsed="0.000358"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:29.003252" 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-08-10T02:08:29.002975" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:29.003853" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ee50a610&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-08-10T02:08:29.003466" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:29.004445" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ecbe0f90&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-08-10T02:08:29.004028" elapsed="0.000445"/>
</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-08-10T02:08:29.004621" elapsed="0.000276"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:29.005044" elapsed="0.000254"/>
</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-08-10T02:08:29.005469" elapsed="0.000240"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:29.005853" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:29.006234" 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-08-10T02:08:29.006642" 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-08-10T02:08:29.007021" 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-08-10T02:08:29.007545" elapsed="0.000362"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:29.008052" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:29.008822" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3956c0&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-08-10T02:08:29.008555" 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-08-10T02:08:29.008997" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:29.009923" 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-08-10T02:08:29.009401" elapsed="0.000609"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:29.010726" 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-08-10T02:08:29.010154" elapsed="0.000634"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:29.481310" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:29.481574" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:29.481812" 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-08-10T02:08:29.010922" elapsed="0.470950"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.487184" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:29.482279" elapsed="0.005002"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec342700&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-08-10T02:08:29.000931" elapsed="0.486523"/>
</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-08-10T02:08:29.000428" elapsed="0.487152"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-08-10T02:08:28.987866" elapsed="0.499799"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.488821" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:29.488191" 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-08-10T02:08:29.493848" 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-08-10T02:08:29.493998" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:29.493701" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:29.494630" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3944a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:29.494176" elapsed="0.000482"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:29.495106" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:29.494823" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:29.495565" 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-08-10T02:08:29.495281" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:29.496054" 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-08-10T02:08:29.495783" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:29.497051" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:29.496229" elapsed="0.000854"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.497623" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:29.497252" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.498134" 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-08-10T02:08:29.497823" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.498663" 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-08-10T02:08:29.498326" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.499237" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:29.498922" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.499764" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:29.499457" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.500259" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3944a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:29.499958" elapsed="0.000342"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:29.493315" elapsed="0.007058"/>
</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-08-10T02:08:29.501675" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:29.501420" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.502120" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:29.501881" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:29.502609" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec3684f0&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-08-10T02:08:29.502322" elapsed="0.000315"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:29.503095" 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-08-10T02:08:29.502798" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:29.503836" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec369990&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-08-10T02:08:29.503283" elapsed="0.000581"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:29.504403" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec368540&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-08-10T02:08:29.504010" elapsed="0.000420"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:29.504573" elapsed="0.000263"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:29.504982" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:29.505403" 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-08-10T02:08:29.505789" elapsed="0.000231"/>
</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-08-10T02:08:29.506164" elapsed="0.000250"/>
</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-08-10T02:08:29.506556" elapsed="0.000288"/>
</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-08-10T02:08:29.506991" elapsed="0.000383"/>
</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-08-10T02:08:29.507590" elapsed="0.000488"/>
</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-08-10T02:08:29.508277" elapsed="0.000482"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:29.509355" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec36a840&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-08-10T02:08:29.508967" elapsed="0.000428"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:29.509602" elapsed="0.000345"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:29.510890" 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-08-10T02:08:29.510146" elapsed="0.000862"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:29.511992" 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-08-10T02:08:29.511208" elapsed="0.000828"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:29.983228" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:29.983520" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:29.983829" 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-08-10T02:08:29.512262" elapsed="0.471629"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.989211" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:29.984447" 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 0x7777ec3944a0&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-08-10T02:08:29.501012" elapsed="0.488484"/>
</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-08-10T02:08:29.500523" elapsed="0.489104"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-08-10T02:08:29.487905" elapsed="0.501810"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:29.990869" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:29.990275" elapsed="0.000694"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:29.996401" 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-08-10T02:08:29.996638" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:29.996167" elapsed="0.000511"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:29.997558" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db6f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:29.996893" elapsed="0.000705"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:29.998205" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:29.997812" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:29.998849" 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-08-10T02:08:29.998474" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:29.999819" 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-08-10T02:08:29.999151" elapsed="0.000704"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:30.001010" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:30.000135" elapsed="0.000905"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.001566" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:30.001210" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.002063" 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-08-10T02:08:30.001759" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.002579" 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-08-10T02:08:30.002251" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.003079" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:30.002768" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.003596" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:30.003273" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.004093" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db6f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:30.003790" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:29.995651" elapsed="0.008539"/>
</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-08-10T02:08:30.005527" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:30.005259" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.005968" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:30.005730" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:30.006464" level="INFO">${xml} = &lt;Element 'input' at 0x7777dff304f0&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-08-10T02:08:30.006174" elapsed="0.000317"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:30.006913" 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-08-10T02:08:30.006637" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:30.007588" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dff33240&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-08-10T02:08:30.007176" elapsed="0.000439"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:30.008141" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dff31120&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-08-10T02:08:30.007763" elapsed="0.000405"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:30.008314" elapsed="0.000287"/>
</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-08-10T02:08:30.008749" elapsed="0.000257"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:30.009155" 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-08-10T02:08:30.009561" 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-08-10T02:08:30.009941" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:30.010319" 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-08-10T02:08:30.010717" elapsed="0.000513"/>
</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-08-10T02:08:30.011397" elapsed="0.000360"/>
</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-08-10T02:08:30.011901" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:30.012666" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda32e0&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-08-10T02:08:30.012399" 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-08-10T02:08:30.012839" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:30.013744" 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-08-10T02:08:30.013226" elapsed="0.000602"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:30.014521" 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-08-10T02:08:30.013971" elapsed="0.000581"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:30.483876" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:30.484228" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:30.484562" 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-08-10T02:08:30.014682" elapsed="0.469943"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.489357" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:30.485083" elapsed="0.004354"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec0db6f0&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-08-10T02:08:30.004871" elapsed="0.484660"/>
</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-08-10T02:08:30.004364" elapsed="0.485248"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-08-10T02:08:29.989981" elapsed="0.499686"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.490396" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:30.490026" 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-08-10T02:08:30.495520" 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-08-10T02:08:30.495736" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:30.495253" elapsed="0.000524"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:30.496579" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda2520&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:30.495987" elapsed="0.000621"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:30.497043" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:30.496760" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:30.497502" 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-08-10T02:08:30.497217" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:30.497941" 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-08-10T02:08:30.497675" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:30.498913" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:30.498116" elapsed="0.000828"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.499467" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:30.499106" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.499963" 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-08-10T02:08:30.499659" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.500494" 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-08-10T02:08:30.500162" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.500979" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:30.500682" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.501675" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:30.501171" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.502195" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda2520&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:30.501886" 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-08-10T02:08:30.494749" elapsed="0.007547"/>
</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-08-10T02:08:30.503638" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:30.503389" elapsed="0.000352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.504126" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:30.503883" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:30.504623" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfda1d50&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-08-10T02:08:30.504349" elapsed="0.000301"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:30.505060" 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-08-10T02:08:30.504795" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:30.505684" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfda36a0&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-08-10T02:08:30.505269" elapsed="0.000442"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:30.506228" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfda2e30&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-08-10T02:08:30.505858" 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-08-10T02:08:30.506416" 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-08-10T02:08:30.506828" elapsed="0.000254"/>
</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-08-10T02:08:30.507232" elapsed="0.000300"/>
</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-08-10T02:08:30.507682" 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-08-10T02:08:30.508059" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:30.508453" elapsed="0.000232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:30.508828" elapsed="0.000362"/>
</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-08-10T02:08:30.509378" elapsed="0.000353"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:30.509874" elapsed="0.000328"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:30.510636" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec21dd00&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-08-10T02:08:30.510369" 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-08-10T02:08:30.510809" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:30.511868" 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-08-10T02:08:30.511203" elapsed="0.000782"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:30.512684" 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-08-10T02:08:30.512132" elapsed="0.000584"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:30.984332" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:30.984587" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:30.984801" 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-08-10T02:08:30.512846" elapsed="0.472015"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.989831" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:30.985240" elapsed="0.004687"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfda2520&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-08-10T02:08:30.502961" elapsed="0.487096"/>
</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-08-10T02:08:30.502462" elapsed="0.487712"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-08-10T02:08:30.489841" elapsed="0.500414"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:30.991386" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:30.990796" elapsed="0.000693"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:30.996650" 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-08-10T02:08:30.996832" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:30.996447" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:30.997745" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d4e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:30.997081" elapsed="0.000703"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:30.998403" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:30.997995" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:30.999081" 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-08-10T02:08:30.998699" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:30.999804" 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-08-10T02:08:30.999396" elapsed="0.000444"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:31.001071" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:31.000047" elapsed="0.001067"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.001860" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:31.001390" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.002592" 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-08-10T02:08:31.002130" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.003288" 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-08-10T02:08:31.002858" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.004060" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:31.003635" elapsed="0.000487"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.004684" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:31.004372" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.005179" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d4e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:31.004877" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:30.995900" elapsed="0.009375"/>
</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-08-10T02:08:31.006588" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:08:31.006319" elapsed="0.000334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.007035" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:31.006794" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:31.007597" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfe161b0&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-08-10T02:08:31.007284" elapsed="0.000341"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:31.008178" 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-08-10T02:08:31.007771" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:31.008776" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec21df80&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-08-10T02:08:31.008390" elapsed="0.000413"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:31.009320" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfe14810&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-08-10T02:08:31.008951" elapsed="0.000413"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:31.009511" elapsed="0.000262"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:31.009923" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:31.010327" 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-08-10T02:08:31.010729" 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-08-10T02:08:31.011108" 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-08-10T02:08:31.011512" 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-08-10T02:08:31.011920" elapsed="0.000357"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:31.012442" 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-08-10T02:08:31.012943" elapsed="0.000328"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:31.013707" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfe174c0&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-08-10T02:08:31.013439" 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-08-10T02:08:31.013879" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:31.014784" 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-08-10T02:08:31.014267" elapsed="0.000647"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:31.015608" 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-08-10T02:08:31.015061" elapsed="0.000578"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:31.485199" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:31.485521" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:31.485780" 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-08-10T02:08:31.015771" elapsed="0.470071"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.493091" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:31.486279" elapsed="0.006857"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec21d4e0&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-08-10T02:08:31.005919" elapsed="0.487282"/>
</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-08-10T02:08:31.005439" elapsed="0.487818"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-08-10T02:08:30.990510" elapsed="0.502784"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.493818" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:31.493568" 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-08-10T02:08:31.497382" 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-08-10T02:08:31.497548" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:31.497217" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:31.498165" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21e7f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:31.497729" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:31.498697" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:31.498411" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:31.499142" 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-08-10T02:08:31.498874" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:31.499605" 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-08-10T02:08:31.499316" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:31.500540" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:31.499818" elapsed="0.000753"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.501063" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:31.500730" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.501584" 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-08-10T02:08:31.501257" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.502086" 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-08-10T02:08:31.501775" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.502600" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:31.502281" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.503095" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:31.502792" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.503610" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21e7f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:31.503287" 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-08-10T02:08:31.496853" elapsed="0.006853"/>
</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-08-10T02:08:31.504997" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:31.504752" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.505453" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:31.505195" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:31.505922" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec21ee30&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-08-10T02:08:31.505654" elapsed="0.000295"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:31.506412" 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-08-10T02:08:31.506127" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:31.506974" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec21c220&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-08-10T02:08:31.506604" elapsed="0.000397"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:31.507661" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec21dd50&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-08-10T02:08:31.507148" elapsed="0.000541"/>
</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-08-10T02:08:31.507863" elapsed="0.000279"/>
</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-08-10T02:08:31.508292" 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-08-10T02:08:31.508729" 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-08-10T02:08:31.509111" 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-08-10T02:08:31.509511" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:31.509890" elapsed="0.000230"/>
</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-08-10T02:08:31.510265" elapsed="0.000366"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:31.510777" elapsed="0.000347"/>
</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-08-10T02:08:31.511269" elapsed="0.000345"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:31.512047" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda2250&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-08-10T02:08:31.511766" 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-08-10T02:08:31.512221" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:31.513085" 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-08-10T02:08:31.512628" elapsed="0.000538"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:31.513815" 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-08-10T02:08:31.513312" elapsed="0.000534"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:31.986479" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:31.986863" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:31.987157" 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-08-10T02:08:31.513976" elapsed="0.473244"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.992610" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:31.987757" elapsed="0.004952"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec21e7f0&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-08-10T02:08:31.504365" elapsed="0.488488"/>
</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-08-10T02:08:31.503865" elapsed="0.489114"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-08-10T02:08:31.493432" elapsed="0.499635"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:31.993862" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:31.993510" 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-08-10T02:08:31.998503" 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-08-10T02:08:31.998680" 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-08-10T02:08:31.998330" elapsed="0.000379"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:31.999326" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:31.998866" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:31.999817" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:31.999532" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:32.000279" 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-08-10T02:08:31.999995" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:32.000750" 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-08-10T02:08:32.000480" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:32.001909" 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-08-10T02:08:32.000929" elapsed="0.001011"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.002462" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:32.002108" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.002975" 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-08-10T02:08:32.002657" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.003498" 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-08-10T02:08:32.003168" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.003986" 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-08-10T02:08:32.003688" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.004555" 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-08-10T02:08:32.004228" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.005056" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:32.004752" 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-08-10T02:08:31.997946" elapsed="0.007207"/>
</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-08-10T02:08:32.006513" 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-08-10T02:08:32.006246" elapsed="0.000370"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.007046" 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-08-10T02:08:32.006762" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:32.007566" level="INFO">${xml} = &lt;Element 'input' at 0x7777dff31b70&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-08-10T02:08:32.007267" elapsed="0.000327"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:32.008016" 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-08-10T02:08:32.007742" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:32.008628" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dff33650&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-08-10T02:08:32.008231" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:32.009172" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dff33ba0&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-08-10T02:08:32.008802" 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-08-10T02:08:32.009363" 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-08-10T02:08:32.009785" elapsed="0.000254"/>
</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-08-10T02:08:32.010191" elapsed="0.000261"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:32.010597" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:32.010992" elapsed="0.000245"/>
</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-08-10T02:08:32.011403" 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-08-10T02:08:32.011794" elapsed="0.000397"/>
</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-08-10T02:08:32.012362" 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-08-10T02:08:32.012875" elapsed="0.000346"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:32.013785" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ee46b2e0&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-08-10T02:08:32.013401" elapsed="0.000412"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:32.013965" elapsed="0.000254"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:32.014871" 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-08-10T02:08:32.014386" elapsed="0.000605"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:32.015664" 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-08-10T02:08:32.015140" elapsed="0.000557"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:32.487122" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:32.487385" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:32.487681" 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-08-10T02:08:32.015844" elapsed="0.471900"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.493151" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:32.488252" elapsed="0.004996"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfda3790&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-08-10T02:08:32.005851" elapsed="0.487516"/>
</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-08-10T02:08:32.005303" elapsed="0.488154"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-08-10T02:08:31.993303" elapsed="0.500213"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.494236" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:32.493885" elapsed="0.000413"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:32.499217" 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-08-10T02:08:32.499476" 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-08-10T02:08:32.499007" elapsed="0.000511"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:32.500416" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d9f80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:32.499730" elapsed="0.000735"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:32.501115" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:32.500714" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:32.501681" 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-08-10T02:08:32.501404" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:32.502198" 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-08-10T02:08:32.501857" elapsed="0.000367"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:32.503127" 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-08-10T02:08:32.502394" elapsed="0.000764"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.503681" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:32.503325" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.504180" 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-08-10T02:08:32.503875" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.504733" 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-08-10T02:08:32.504416" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.505223" 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-08-10T02:08:32.504925" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.505745" 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-08-10T02:08:32.505439" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.506244" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d9f80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:32.505940" 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-08-10T02:08:32.498494" elapsed="0.007863"/>
</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-08-10T02:08:32.507680" 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-08-10T02:08:32.507429" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.508131" 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-08-10T02:08:32.507885" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:32.508693" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec36af20&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-08-10T02:08:32.508372" elapsed="0.000352"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:32.509324" 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-08-10T02:08:32.508873" elapsed="0.000520"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:32.509913" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec0d9850&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-08-10T02:08:32.509542" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:32.510512" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec3693f0&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-08-10T02:08:32.510090" elapsed="0.000450"/>
</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-08-10T02:08:32.510689" elapsed="0.000269"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:32.511107" elapsed="0.000274"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:32.511535" elapsed="0.000238"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:32.511918" 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-08-10T02:08:32.512355" elapsed="0.000281"/>
</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-08-10T02:08:32.512796" elapsed="0.000237"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:32.513179" 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-08-10T02:08:32.513695" elapsed="0.000339"/>
</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-08-10T02:08:32.514178" elapsed="0.000351"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:32.514950" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec36ad40&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-08-10T02:08:32.514681" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:32.515125" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:32.516013" 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-08-10T02:08:32.515536" elapsed="0.000556"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:32.516792" 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-08-10T02:08:32.516236" elapsed="0.000589"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:32.988160" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:32.988580" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:32.988880" 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-08-10T02:08:32.516957" elapsed="0.471987"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.994275" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:32.989476" 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 0x7777ec0d9f80&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-08-10T02:08:32.507020" elapsed="0.487540"/>
</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-08-10T02:08:32.506511" elapsed="0.488177"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-08-10T02:08:32.493697" elapsed="0.501080"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:32.995960" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:32.995371" elapsed="0.000691"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:33.000375" 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-08-10T02:08:33.000567" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:33.000204" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:33.001209" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395170&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:33.000764" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:33.001702" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:33.001412" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:33.002145" 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-08-10T02:08:33.001878" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:33.002832" 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-08-10T02:08:33.002319" elapsed="0.000540"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:33.003676" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:33.003011" elapsed="0.000696"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.004204" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:33.003872" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.004746" 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-08-10T02:08:33.004413" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.005247" 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-08-10T02:08:33.004936" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.005753" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:33.005454" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.006247" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:33.005946" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.006762" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395170&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:33.006458" 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-08-10T02:08:32.999821" elapsed="0.007036"/>
</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-08-10T02:08:33.008157" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:33.007915" elapsed="0.000342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.008674" level="INFO">&lt;?xml version="1.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-08-10T02:08:33.008416" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:33.009150" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec3973d0&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-08-10T02:08:33.008875" elapsed="0.000303"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:33.009619" 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-08-10T02:08:33.009323" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:33.010168" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec3964d0&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-08-10T02:08:33.009808" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:33.010708" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec394ea0&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-08-10T02:08:33.010358" elapsed="0.000377"/>
</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-08-10T02:08:33.010880" 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-08-10T02:08:33.011299" 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-08-10T02:08:33.011721" 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-08-10T02:08:33.012100" elapsed="0.000249"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:33.012497" elapsed="0.000267"/>
</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-08-10T02:08:33.012909" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:33.013329" elapsed="0.000448"/>
</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-08-10T02:08:33.013957" elapsed="0.000341"/>
</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-08-10T02:08:33.014464" elapsed="0.000402"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:33.015484" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbe3420&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-08-10T02:08:33.015040" elapsed="0.000473"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:33.015665" elapsed="0.000277"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:33.016654" 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-08-10T02:08:33.016139" elapsed="0.000651"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:33.017468" 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-08-10T02:08:33.016971" elapsed="0.000529"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:33.488937" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:33.489170" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:33.489510" 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-08-10T02:08:33.017633" elapsed="0.471944"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.495194" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:33.490103" elapsed="0.005189"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec395170&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-08-10T02:08:33.007528" elapsed="0.487949"/>
</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-08-10T02:08:33.007007" elapsed="0.488602"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-08-10T02:08:32.995045" elapsed="0.500652"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.496917" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:33.496255" elapsed="0.000766"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:33.500817" 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-08-10T02:08:33.500997" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:33.500651" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:33.501648" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe31a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:33.501179" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:33.502116" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:33.501832" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:33.502580" 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-08-10T02:08:33.502293" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:33.503024" 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-08-10T02:08:33.502755" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:33.503844" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:33.503199" elapsed="0.000736"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.504460" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:33.504106" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.504987" 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-08-10T02:08:33.504655" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.505507" 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-08-10T02:08:33.505179" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.505999" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:33.505698" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.506517" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:33.506192" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.507017" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe31a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:33.506713" 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-08-10T02:08:33.500249" elapsed="0.006887"/>
</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-08-10T02:08:33.508486" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:33.508219" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.508985" level="INFO">&lt;?xml version="1.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-08-10T02:08:33.508683" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:33.509483" level="INFO">${xml} = &lt;Element 'input' at 0x7777ecbe36a0&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-08-10T02:08:33.509186" elapsed="0.000325"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:33.509939" 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-08-10T02:08:33.509657" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:33.510686" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ecbe0db0&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-08-10T02:08:33.510130" elapsed="0.000584"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:33.511205" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ecbe0180&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-08-10T02:08:33.510863" elapsed="0.000369"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:33.511396" elapsed="0.000269"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:33.511813" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:33.512218" 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-08-10T02:08:33.512620" 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-08-10T02:08:33.513020" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:33.513452" 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-08-10T02:08:33.513841" elapsed="0.000333"/>
</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-08-10T02:08:33.514319" elapsed="0.000334"/>
</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-08-10T02:08:33.514797" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:33.515581" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ee530ea0&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-08-10T02:08:33.515282" 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-08-10T02:08:33.515756" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:33.516581" 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-08-10T02:08:33.516147" elapsed="0.000503"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:33.517260" 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-08-10T02:08:33.516796" elapsed="0.000495"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:33.990045" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:33.990254" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:33.990576" 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-08-10T02:08:33.517438" elapsed="0.473203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.995975" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:33.991139" elapsed="0.004933"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ecbe31a0&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-08-10T02:08:33.507831" elapsed="0.488382"/>
</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-08-10T02:08:33.507308" elapsed="0.489480"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-08-10T02:08:33.495961" elapsed="0.500924"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:33.998314" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:33.997674" 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-08-10T02:08:34.002110" 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-08-10T02:08:34.002264" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:34.001949" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:34.002960" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:34.002472" elapsed="0.000517"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:34.003548" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:34.003186" elapsed="0.000388"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:34.003995" 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-08-10T02:08:34.003725" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:34.004459" 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-08-10T02:08:34.004171" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:34.005535" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:34.004637" elapsed="0.000929"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.006072" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:34.005735" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.006599" 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-08-10T02:08:34.006265" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.007101" 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-08-10T02:08:34.006790" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.007607" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:34.007289" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.008104" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:34.007801" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.008624" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:34.008298" 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-08-10T02:08:34.001558" elapsed="0.007161"/>
</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-08-10T02:08:34.010046" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:34.009802" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.010499" level="INFO">&lt;?xml version="1.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-08-10T02:08:34.010241" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:34.011007" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfff0ef0&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-08-10T02:08:34.010735" elapsed="0.000300"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:34.011475" 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-08-10T02:08:34.011181" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:34.012018" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfff0900&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-08-10T02:08:34.011666" elapsed="0.000380"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:34.012553" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfff3470&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-08-10T02:08:34.012192" elapsed="0.000388"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:34.012726" elapsed="0.000267"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:34.013153" 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-08-10T02:08:34.013578" elapsed="0.000236"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.013959" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.014355" elapsed="0.000237"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.014736" elapsed="0.000232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.015112" elapsed="0.000350"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.015607" elapsed="0.000316"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.016065" elapsed="0.000345"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:34.016828" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfff1850&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-08-10T02:08:34.016562" 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-08-10T02:08:34.017001" elapsed="0.000273"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:34.017848" 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-08-10T02:08:34.017437" elapsed="0.000481"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:34.018519" 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-08-10T02:08:34.018063" elapsed="0.000487"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:34.490562" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:34.490837" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:34.491093" 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-08-10T02:08:34.018681" elapsed="0.472473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.496307" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:34.491620" elapsed="0.004820"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfff1350&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-08-10T02:08:34.009414" elapsed="0.487165"/>
</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-08-10T02:08:34.008869" elapsed="0.487832"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-08-10T02:08:33.997266" elapsed="0.499521"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.497928" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:34.497367" elapsed="0.000658"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:34.504000" 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-08-10T02:08:34.504150" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:34.503854" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:34.504786" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:34.504328" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:34.505245" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:34.504966" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:34.505717" 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-08-10T02:08:34.505450" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:34.506153" 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-08-10T02:08:34.505890" elapsed="0.000288"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:34.507088" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:34.506325" elapsed="0.000793"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.507631" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:34.507283" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.508131" 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-08-10T02:08:34.507825" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.508648" 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-08-10T02:08:34.508321" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.509133" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:34.508836" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.509670" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:34.509361" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.510168" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:34.509864" 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-08-10T02:08:34.503495" elapsed="0.006767"/>
</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-08-10T02:08:34.511578" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:34.511314" elapsed="0.000361"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.512060" level="INFO">&lt;?xml version="1.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-08-10T02:08:34.511817" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:34.512554" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfc9cae0&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-08-10T02:08:34.512264" elapsed="0.000317"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:34.512993" 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-08-10T02:08:34.512727" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:34.513605" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfc9e8e0&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-08-10T02:08:34.513183" elapsed="0.000450"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:34.514305" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfc9c2c0&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-08-10T02:08:34.513780" elapsed="0.000569"/>
</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-08-10T02:08:34.514498" 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-08-10T02:08:34.514911" elapsed="0.000256"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.515318" 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-08-10T02:08:34.515723" 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-08-10T02:08:34.516102" elapsed="0.000255"/>
</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-08-10T02:08:34.516503" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.516880" elapsed="0.000344"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.517393" elapsed="0.000358"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:34.517896" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:34.518664" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec034860&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-08-10T02:08:34.518397" 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-08-10T02:08:34.518836" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:34.519743" 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-08-10T02:08:34.519226" elapsed="0.000635"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:34.520533" 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-08-10T02:08:34.520008" elapsed="0.000556"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:34.991857" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:34.992087" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:34.992409" 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-08-10T02:08:34.520695" elapsed="0.471786"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.996525" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:34.992962" elapsed="0.003626"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfc9e480&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-08-10T02:08:34.510924" elapsed="0.485756"/>
</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-08-10T02:08:34.510426" elapsed="0.486335"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-08-10T02:08:34.497032" elapsed="0.499784"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:34.997531" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:34.997161" 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-08-10T02:08:35.002507" 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-08-10T02:08:35.002739" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:35.002269" elapsed="0.000510"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:35.003621" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:35.002990" elapsed="0.000672"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:35.004263" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:35.003873" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:35.004926" 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-08-10T02:08:35.004532" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:35.005694" 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-08-10T02:08:35.005239" elapsed="0.000498"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:35.007016" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:35.005945" elapsed="0.001102"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.007560" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:35.007209" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.008060" 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-08-10T02:08:35.007753" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.008585" 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-08-10T02:08:35.008251" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.009075" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:35.008776" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.009605" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:35.009266" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.010112" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:35.009804" 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-08-10T02:08:35.001773" elapsed="0.008435"/>
</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-08-10T02:08:35.011529" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:35.011262" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.011971" level="INFO">&lt;?xml version="1.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-08-10T02:08:35.011731" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:35.012455" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfe2c540&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-08-10T02:08:35.012171" elapsed="0.000311"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:35.012886" 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-08-10T02:08:35.012624" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:35.013500" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfe2c590&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-08-10T02:08:35.013106" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:35.014134" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfe2d210&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-08-10T02:08:35.013748" elapsed="0.000414"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:35.014311" elapsed="0.000289"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:35.014748" 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-08-10T02:08:35.015172" 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-08-10T02:08:35.015583" 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-08-10T02:08:35.015966" elapsed="0.000237"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:35.016361" 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-08-10T02:08:35.016744" elapsed="0.000345"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:35.017232" elapsed="0.001983"/>
</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-08-10T02:08:35.019389" elapsed="0.000342"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:35.020150" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec037ce0&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-08-10T02:08:35.019883" 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-08-10T02:08:35.020324" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:35.021202" 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-08-10T02:08:35.020730" elapsed="0.000553"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:35.021987" 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-08-10T02:08:35.021449" elapsed="0.000569"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:35.492267" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:35.492571" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:35.492805" 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-08-10T02:08:35.022147" elapsed="0.470718"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.497322" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:35.493234" elapsed="0.004230"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec035670&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-08-10T02:08:35.010871" elapsed="0.486739"/>
</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-08-10T02:08:35.010374" elapsed="0.487367"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-08-10T02:08:34.996982" elapsed="0.500873"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.499037" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:35.498453" 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-08-10T02:08:35.506834" 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-08-10T02:08:35.507001" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:35.506682" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:35.507657" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0371a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:35.507185" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:35.508129" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:35.507842" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:35.508602" 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-08-10T02:08:35.508309" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:35.509051" 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-08-10T02:08:35.508780" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:35.510032" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:35.509226" elapsed="0.000837"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.510578" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:35.510226" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.511085" 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-08-10T02:08:35.510774" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.511611" 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-08-10T02:08:35.511278" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.512107" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:35.511804" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.512630" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:35.512303" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.513136" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0371a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:35.512827" 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-08-10T02:08:35.506060" elapsed="0.007173"/>
</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-08-10T02:08:35.517466" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:35.517191" elapsed="0.000391"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:35.518074" level="INFO">&lt;?xml version="1.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-08-10T02:08:35.517727" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:35.518586" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfc9da30&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-08-10T02:08:35.518288" elapsed="0.000327"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:35.519029" 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-08-10T02:08:35.518763" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:35.519833" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfc9d170&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-08-10T02:08:35.519225" elapsed="0.000638"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:35.520415" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfc9c180&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-08-10T02:08:35.520014" elapsed="0.000429"/>
</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-08-10T02:08:35.520590" 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-08-10T02:08:35.521010" elapsed="0.000260"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:35.521440" 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-08-10T02:08:35.521827" elapsed="0.000257"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:35.522229" elapsed="0.000254"/>
</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-08-10T02:08:35.522627" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:35.523003" elapsed="0.000378"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:35.523526" 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-08-10T02:08:35.524027" elapsed="0.000349"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:35.524794" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9c630&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-08-10T02:08:35.524527" 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-08-10T02:08:35.524967" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:35.525896" 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-08-10T02:08:35.525375" elapsed="0.000675"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:35.526754" 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-08-10T02:08:35.526206" elapsed="0.000580"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:35.994475" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:35.994697" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:35.994955" 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-08-10T02:08:35.526917" elapsed="0.468103"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.000176" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:35.995505" elapsed="0.004773"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec0371a0&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-08-10T02:08:35.516769" elapsed="0.483689"/>
</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-08-10T02:08:35.513399" elapsed="0.487188"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-08-10T02:08:35.498120" elapsed="0.502554"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.001810" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:36.001204" elapsed="0.000710"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:36.006931" 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-08-10T02:08:36.007142" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:36.006730" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:36.007985" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0f90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:36.007420" elapsed="0.000606"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:36.008660" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:36.008240" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:36.009387" 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-08-10T02:08:36.008978" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:36.010023" 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-08-10T02:08:36.009640" elapsed="0.000421"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:36.011149" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:36.010325" elapsed="0.000855"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.011693" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:36.011359" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.012198" 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-08-10T02:08:36.011889" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.012724" 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-08-10T02:08:36.012410" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.013218" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:36.012918" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.013738" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:36.013430" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.014269" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0f90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:36.013934" 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-08-10T02:08:36.006220" elapsed="0.008170"/>
</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-08-10T02:08:36.015695" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:36.015447" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.016133" level="INFO">&lt;?xml version="1.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-08-10T02:08:36.015892" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:36.016618" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfff2340&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-08-10T02:08:36.016330" elapsed="0.000317"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:36.017049" 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-08-10T02:08:36.016790" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:36.017606" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfff0400&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-08-10T02:08:36.017239" elapsed="0.000395"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:36.018144" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfff1e90&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-08-10T02:08:36.017780" elapsed="0.000392"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:36.018317" 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-08-10T02:08:36.018783" elapsed="0.000260"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:36.019193" 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-08-10T02:08:36.019597" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:36.019977" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:36.020377" elapsed="0.000232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:36.020755" elapsed="0.000322"/>
</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-08-10T02:08:36.021223" elapsed="0.000331"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:36.021699" elapsed="0.000328"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:36.022501" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec342700&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-08-10T02:08:36.022191" 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-08-10T02:08:36.022679" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:36.023599" 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-08-10T02:08:36.023072" elapsed="0.000596"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:36.024253" 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-08-10T02:08:36.023812" elapsed="0.000472"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:36.495476" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:36.495664" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:36.495910" 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-08-10T02:08:36.024431" elapsed="0.471639"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.501121" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:36.496539" elapsed="0.004680"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfff0f90&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-08-10T02:08:36.015038" elapsed="0.486351"/>
</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-08-10T02:08:36.014545" elapsed="0.486973"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-08-10T02:08:36.000914" elapsed="0.500691"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.502827" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:36.502131" elapsed="0.000799"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:36.506713" 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-08-10T02:08:36.506869" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:36.506568" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:36.507510" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:36.507050" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:36.507969" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:36.507691" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:36.508429" 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-08-10T02:08:36.508143" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:36.508911" 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-08-10T02:08:36.508645" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:36.509891" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:36.509085" elapsed="0.000837"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.510479" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:36.510081" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.510982" 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-08-10T02:08:36.510677" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.511500" 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-08-10T02:08:36.511168" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.511987" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:36.511689" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.512500" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:36.512179" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.512997" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbed620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:36.512694" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:36.506178" elapsed="0.006913"/>
</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-08-10T02:08:36.514605" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:36.514291" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:36.515104" level="INFO">&lt;?xml version="1.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-08-10T02:08:36.514857" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:36.515609" level="INFO">${xml} = &lt;Element 'input' at 0x7777ecbe2340&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-08-10T02:08:36.515313" elapsed="0.000324"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:36.516215" 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-08-10T02:08:36.515783" elapsed="0.000480"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:36.516816" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ecb88360&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-08-10T02:08:36.516432" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:36.517379" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ecbe1620&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-08-10T02:08:36.516991" 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-08-10T02:08:36.517556" elapsed="0.000263"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:36.517967" elapsed="0.000265"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:36.518422" 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-08-10T02:08:36.518809" 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-08-10T02:08:36.519188" elapsed="0.000257"/>
</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-08-10T02:08:36.519589" elapsed="0.000234"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:36.519968" 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-08-10T02:08:36.520492" 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-08-10T02:08:36.520991" elapsed="0.000328"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:36.521755" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec395800&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-08-10T02:08:36.521489" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:36.521928" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:36.522879" 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-08-10T02:08:36.522319" elapsed="0.000686"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:36.523699" 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-08-10T02:08:36.523154" elapsed="0.000576"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:36.995897" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:36.996143" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:36.996464" 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-08-10T02:08:36.523862" elapsed="0.472669"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.002158" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:36.997032" elapsed="0.005223"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ecbed620&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-08-10T02:08:36.513822" elapsed="0.488615"/>
</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-08-10T02:08:36.513239" elapsed="0.489328"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-08-10T02:08:36.501842" elapsed="0.500836"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.003835" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:37.003231" 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-08-10T02:08:37.009462" 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-08-10T02:08:37.009639" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:37.009292" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:37.010264" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec396930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:37.009822" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:37.010765" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:37.010467" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:37.011283" 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-08-10T02:08:37.011007" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:37.011759" 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-08-10T02:08:37.011486" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:37.012642" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:37.011937" elapsed="0.000741"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.013171" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:37.012840" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.013687" 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-08-10T02:08:37.013380" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.014185" 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-08-10T02:08:37.013878" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.014730" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:37.014402" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.015232" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:37.014929" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.015749" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec396930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:37.015444" 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-08-10T02:08:37.008905" elapsed="0.006941"/>
</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-08-10T02:08:37.017148" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:37.016900" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.017614" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:08:37.017366" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:37.018089" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec36aac0&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-08-10T02:08:37.017818" elapsed="0.000299"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:37.018558" 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-08-10T02:08:37.018263" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:37.019144" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec3683b0&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-08-10T02:08:37.018765" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:37.019880" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec36a750&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-08-10T02:08:37.019319" elapsed="0.000589"/>
</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-08-10T02:08:37.020055" elapsed="0.000272"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:37.020494" elapsed="0.000257"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:37.020903" 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-08-10T02:08:37.021294" elapsed="0.000252"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:37.021692" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:37.022069" elapsed="0.000231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:37.022465" 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-08-10T02:08:37.022974" elapsed="0.000326"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:37.023468" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:37.024218" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec369f30&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-08-10T02:08:37.023952" 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-08-10T02:08:37.024410" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:37.025250" 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-08-10T02:08:37.024804" elapsed="0.000520"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:37.025958" 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-08-10T02:08:37.025488" elapsed="0.000501"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:37.496143" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:37.496443" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:37.496668" 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-08-10T02:08:37.026118" elapsed="0.470613"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.500853" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:37.497103" elapsed="0.003812"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec396930&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-08-10T02:08:37.016509" elapsed="0.484489"/>
</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-08-10T02:08:37.015995" elapsed="0.485080"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-08-10T02:08:37.002941" elapsed="0.498186"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.501826" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:37.501476" 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-08-10T02:08:37.506724" 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-08-10T02:08:37.506945" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:37.506528" elapsed="0.000460"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:37.507781" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36abb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:37.507199" elapsed="0.000621"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:37.508443" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:37.508030" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:37.509065" 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-08-10T02:08:37.508691" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:37.509716" 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-08-10T02:08:37.509309" elapsed="0.000444"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:37.511033" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:37.509960" elapsed="0.001116"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.511727" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:37.511296" elapsed="0.000473"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.512228" 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-08-10T02:08:37.511920" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.512754" 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-08-10T02:08:37.512435" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.513238" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:37.512943" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.513754" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:37.513450" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.514254" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36abb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:37.513949" 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-08-10T02:08:37.506028" elapsed="0.008339"/>
</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-08-10T02:08:37.515690" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-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-08-10T02:08:37.515444" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:37.516176" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:37.515932" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:37.516693" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec0d97b0&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-08-10T02:08:37.516398" elapsed="0.000322"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:37.517115" 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-08-10T02:08:37.516864" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:37.517689" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec0d9350&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-08-10T02:08:37.517306" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:37.518210" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec0db920&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-08-10T02:08:37.517864" elapsed="0.000373"/>
</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-08-10T02:08:37.518400" elapsed="0.000263"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:37.518811" 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-08-10T02:08:37.519267" 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-08-10T02:08:37.519673" 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-08-10T02:08:37.520052" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:37.520447" 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-08-10T02:08:37.520833" elapsed="0.000333"/>
</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-08-10T02:08:37.521311" elapsed="0.000340"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:37.521796" elapsed="0.000328"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:37.522566" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dff33f60&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-08-10T02:08:37.522275" 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-08-10T02:08:37.522741" elapsed="0.000258"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:37.523692" 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-08-10T02:08:37.523145" elapsed="0.000653"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:37.524427" 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-08-10T02:08:37.523947" elapsed="0.000511"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:37.996773" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:37.996949" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:37.997174" 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-08-10T02:08:37.524589" elapsed="0.472644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.002212" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:37.997673" elapsed="0.004635"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec36abb0&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-08-10T02:08:37.515022" elapsed="0.487457"/>
</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-08-10T02:08:37.514517" elapsed="0.488085"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-08-10T02:08:37.501271" elapsed="0.501414"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.003798" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:38.003261" elapsed="0.000583"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:38.007289" 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-08-10T02:08:38.007445" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:38.007144" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:38.008046" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff317b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:38.007632" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:38.008525" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:38.008226" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:38.008969" 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-08-10T02:08:38.008701" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:38.009433" 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-08-10T02:08:38.009143" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:38.010231" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:38.009605" elapsed="0.000698"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.010813" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:38.010485" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.011363" 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-08-10T02:08:38.011006" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.011867" 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-08-10T02:08:38.011556" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.012380" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:38.012057" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.012878" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:38.012575" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.013396" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff317b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:38.013074" 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-08-10T02:08:38.006784" elapsed="0.006710"/>
</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-08-10T02:08:38.014779" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;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-08-10T02:08:38.014534" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.015229" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:38.014976" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:38.015715" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfda0770&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-08-10T02:08:38.015445" elapsed="0.000301"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:38.016145" 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-08-10T02:08:38.015887" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:38.016878" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfda1cb0&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-08-10T02:08:38.016351" elapsed="0.000555"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:38.017421" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfda2f20&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-08-10T02:08:38.017052" 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-08-10T02:08:38.017593" elapsed="0.000264"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:38.018004" elapsed="0.000254"/>
</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-08-10T02:08:38.018424" elapsed="0.000238"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:38.018845" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:38.019255" elapsed="0.000255"/>
</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-08-10T02:08:38.019654" elapsed="0.000232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:38.020029" 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-08-10T02:08:38.020525" elapsed="0.000325"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:38.020993" elapsed="0.000326"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:38.021753" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda38d0&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-08-10T02:08:38.021489" 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-08-10T02:08:38.021926" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:38.022768" 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-08-10T02:08:38.022311" elapsed="0.000531"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:38.023485" 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-08-10T02:08:38.022985" elapsed="0.000531"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:38.497932" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:38.498169" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:38.498443" 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-08-10T02:08:38.023644" elapsed="0.474863"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.503444" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:38.498892" elapsed="0.004654"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dff317b0&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-08-10T02:08:38.014130" elapsed="0.489547"/>
</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-08-10T02:08:38.013642" elapsed="0.490153"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-08-10T02:08:38.002918" elapsed="0.500961"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.504980" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:38.504424" elapsed="0.000654"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:38.510427" 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-08-10T02:08:38.510566" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:38.510267" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:38.511156" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c9a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:38.510744" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:38.511664" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:38.511352" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:38.512108" 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-08-10T02:08:38.511842" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:38.512571" 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-08-10T02:08:38.512283" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:38.513569" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:38.512744" elapsed="0.000856"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.514082" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:38.513760" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.514599" 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-08-10T02:08:38.514275" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.515098" 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-08-10T02:08:38.514789" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.515634" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:38.515287" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.516128" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:38.515828" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.516643" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21c9a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:38.516322" 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-08-10T02:08:38.509925" elapsed="0.006813"/>
</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-08-10T02:08:38.518016" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&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-08-10T02:08:38.517772" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:38.518518" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:38.518254" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:38.518986" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec21d030&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-08-10T02:08:38.518719" elapsed="0.000294"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:38.519442" 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-08-10T02:08:38.519155" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:38.519999" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec21f740&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-08-10T02:08:38.519632" elapsed="0.000395"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:38.520554" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec21ca90&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-08-10T02:08:38.520171" 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-08-10T02:08:38.520723" elapsed="0.000259"/>
</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-08-10T02:08:38.521128" elapsed="0.000271"/>
</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-08-10T02:08:38.521548" elapsed="0.000236"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:38.521928" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:38.522303" elapsed="0.000253"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:38.522698" elapsed="0.000231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:38.523072" 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-08-10T02:08:38.523603" elapsed="0.000340"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:38.524086" elapsed="0.000450"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:38.524950" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfe2fa60&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-08-10T02:08:38.524687" elapsed="0.000289"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:38.525121" elapsed="0.000260"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:38.525991" 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-08-10T02:08:38.525526" elapsed="0.000579"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:38.526758" 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-08-10T02:08:38.526251" elapsed="0.000537"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:38.998597" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:38.998781" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:38.999002" 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-08-10T02:08:38.526919" elapsed="0.472140"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.004051" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:38.999485" elapsed="0.004661"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec21c9a0&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-08-10T02:08:38.517385" elapsed="0.486892"/>
</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-08-10T02:08:38.516883" elapsed="0.487554"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-08-10T02:08:38.504106" elapsed="0.500416"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.005634" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:39.005035" 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-08-10T02:08:39.010733" 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-08-10T02:08:39.010871" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:39.010592" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:39.011467" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ac130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:39.011051" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:39.011955" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:39.011665" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:39.012418" 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-08-10T02:08:39.012132" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:39.012861" 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-08-10T02:08:39.012593" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:39.013717" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:39.013073" elapsed="0.000675"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.014231" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:39.013908" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.014749" 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-08-10T02:08:39.014443" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.015246" 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-08-10T02:08:39.014938" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.015779" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:39.015453" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.016277" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:39.015974" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.016795" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ac130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:39.016490" 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-08-10T02:08:39.010227" elapsed="0.006663"/>
</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-08-10T02:08:39.018205" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:39.017959" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.018661" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&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-08-10T02:08:39.018419" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:39.019123" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec2ae520&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-08-10T02:08:39.018859" elapsed="0.000291"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:39.021288" 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-08-10T02:08:39.019292" elapsed="0.002061"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:39.021865" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfe2f4c0&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-08-10T02:08:39.021502" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:39.022424" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfe2e570&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-08-10T02:08:39.022040" elapsed="0.000413"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:39.022602" 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-08-10T02:08:39.023021" 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-08-10T02:08:39.023514" elapsed="0.000286"/>
</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-08-10T02:08:39.023950" elapsed="0.000243"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:39.024356" 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-08-10T02:08:39.024746" 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-08-10T02:08:39.025131" elapsed="0.000352"/>
</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-08-10T02:08:39.025630" elapsed="0.000333"/>
</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-08-10T02:08:39.026111" elapsed="0.000363"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:39.026909" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec21c630&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-08-10T02:08:39.026631" 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-08-10T02:08:39.027086" elapsed="0.000267"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:39.027969" 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-08-10T02:08:39.027505" elapsed="0.000539"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:39.028689" 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-08-10T02:08:39.028191" elapsed="0.000530"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:39.499944" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:39.500249" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:39.500584" 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-08-10T02:08:39.028853" elapsed="0.471792"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.505880" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:39.501088" elapsed="0.004892"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec2ac130&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-08-10T02:08:39.017572" elapsed="0.488548"/>
</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-08-10T02:08:39.017036" elapsed="0.489208"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-08-10T02:08:39.004750" elapsed="0.501579"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.507503" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:39.506906" 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-08-10T02:08:39.512837" 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-08-10T02:08:39.513047" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:39.512634" elapsed="0.000453"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:39.513930" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21cbd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:39.513297" elapsed="0.000672"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:39.514596" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:39.514182" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:39.515214" 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-08-10T02:08:39.514841" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:39.515853" 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-08-10T02:08:39.515479" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:39.517421" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:39.516119" elapsed="0.001346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.518146" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:39.517687" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.518867" 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-08-10T02:08:39.518439" elapsed="0.000486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.519591" 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-08-10T02:08:39.519132" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.520317" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:39.519855" elapsed="0.000549"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.520952" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:39.520635" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.521469" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21cbd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:39.521148" 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-08-10T02:08:39.512113" elapsed="0.009453"/>
</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-08-10T02:08:39.522865" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:39.522621" elapsed="0.000349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:39.523368" level="INFO">&lt;?xml version="1.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-08-10T02:08:39.523110" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:39.523840" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfda2b60&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-08-10T02:08:39.523571" elapsed="0.000297"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:39.524312" 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-08-10T02:08:39.524037" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:39.524902" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfda2e80&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-08-10T02:08:39.524520" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:39.525483" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfda1ee0&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-08-10T02:08:39.525077" elapsed="0.000439"/>
</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-08-10T02:08:39.525675" 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-08-10T02:08:39.526091" 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-08-10T02:08:39.526523" 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-08-10T02:08:39.526909" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:39.527288" elapsed="0.000271"/>
</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-08-10T02:08:39.527732" 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-08-10T02:08:39.528184" elapsed="0.000398"/>
</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-08-10T02:08:39.528728" elapsed="0.000450"/>
</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-08-10T02:08:39.529326" elapsed="0.000355"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:39.530103" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dff31b70&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-08-10T02:08:39.529834" 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-08-10T02:08:39.530278" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:39.531182" 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-08-10T02:08:39.530691" elapsed="0.000608"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:39.532018" 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-08-10T02:08:39.531467" elapsed="0.000583"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:40.025163" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:40.025418" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:40.025668" 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-08-10T02:08:39.532181" elapsed="0.493547"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.030781" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:40.026129" elapsed="0.004752"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec21cbd0&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-08-10T02:08:39.522208" elapsed="0.508867"/>
</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-08-10T02:08:39.521715" elapsed="0.509489"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-08-10T02:08:39.506617" elapsed="0.524672"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.032527" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:40.031855" 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-08-10T02:08:40.038589" 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-08-10T02:08:40.038745" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:40.038421" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:40.039453" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:40.038956" elapsed="0.000526"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:40.039942" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:40.039653" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:40.040510" 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-08-10T02:08:40.040121" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:40.040969" 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-08-10T02:08:40.040691" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:40.041947" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:40.041146" elapsed="0.000833"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.042486" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:40.042140" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.042997" 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-08-10T02:08:40.042684" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.043533" 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-08-10T02:08:40.043190" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.044031" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:40.043726" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.044598" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:40.044255" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.045108" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff33ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:40.044797" 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-08-10T02:08:40.037985" elapsed="0.007222"/>
</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-08-10T02:08:40.046774" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:40.046513" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.047235" level="INFO">&lt;?xml version="1.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-08-10T02:08:40.046985" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:40.047771" level="INFO">${xml} = &lt;Element 'input' at 0x7777dff33380&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-08-10T02:08:40.047494" elapsed="0.000305"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:40.048247" 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-08-10T02:08:40.047946" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:40.048860" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dff30720&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-08-10T02:08:40.048461" elapsed="0.000427"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:40.049438" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec0dbf10&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-08-10T02:08:40.049038" elapsed="0.000428"/>
</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-08-10T02:08:40.049616" 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-08-10T02:08:40.050039" 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-08-10T02:08:40.050473" elapsed="0.000244"/>
</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-08-10T02:08:40.050863" elapsed="0.000242"/>
</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-08-10T02:08:40.051252" elapsed="0.000259"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:40.051658" 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-08-10T02:08:40.052044" elapsed="0.000405"/>
</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-08-10T02:08:40.052605" 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-08-10T02:08:40.053125" elapsed="0.000362"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:40.053917" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec36a660&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-08-10T02:08:40.053641" 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-08-10T02:08:40.054111" elapsed="0.000284"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:40.055072" 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-08-10T02:08:40.054546" elapsed="0.000613"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:40.055927" 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-08-10T02:08:40.055379" elapsed="0.000581"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:40.503316" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:40.503610" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:40.503878" 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-08-10T02:08:40.056094" elapsed="0.447845"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.509647" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:40.504485" elapsed="0.005265"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dff33ce0&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-08-10T02:08:40.045921" elapsed="0.463968"/>
</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-08-10T02:08:40.045373" elapsed="0.464643"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-08-10T02:08:40.031565" elapsed="0.478539"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.511264" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:40.510697" 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-08-10T02:08:40.516168" 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-08-10T02:08:40.516356" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:40.516016" elapsed="0.000372"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:40.517064" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368e50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:40.516586" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:40.517569" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:40.517249" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:40.518094" 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-08-10T02:08:40.517810" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:40.518569" 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-08-10T02:08:40.518272" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:40.519552" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:40.518744" elapsed="0.000839"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.520099" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:40.519750" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.520666" 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-08-10T02:08:40.520295" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.521192" 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-08-10T02:08:40.520866" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.521709" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:40.521405" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.522227" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:40.521915" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.522753" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368e50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:40.522442" 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-08-10T02:08:40.515636" elapsed="0.007213"/>
</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-08-10T02:08:40.524203" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:40.523948" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:40.524715" level="INFO">&lt;?xml version="1.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-08-10T02:08:40.524458" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:40.525252" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec395df0&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-08-10T02:08:40.524969" elapsed="0.000311"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:40.525720" 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-08-10T02:08:40.525448" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:40.526479" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec3966b0&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-08-10T02:08:40.525913" elapsed="0.000594"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:40.527046" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec396c00&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-08-10T02:08:40.526655" 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-08-10T02:08:40.527219" 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-08-10T02:08:40.527663" elapsed="0.000260"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:40.528083" elapsed="0.000244"/>
</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-08-10T02:08:40.528524" elapsed="0.000245"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:40.528917" elapsed="0.000250"/>
</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-08-10T02:08:40.529312" elapsed="0.000258"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:40.529717" elapsed="0.000378"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:40.530244" 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-08-10T02:08:40.530770" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:40.531554" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbe1760&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-08-10T02:08:40.531264" 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-08-10T02:08:40.531729" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:40.532696" 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-08-10T02:08:40.532130" elapsed="0.000653"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:40.533538" 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-08-10T02:08:40.532969" elapsed="0.000601"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:41.004238" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:41.004509" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:41.004784" 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-08-10T02:08:40.533702" elapsed="0.471144"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.009948" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:41.005270" elapsed="0.004776"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec368e50&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-08-10T02:08:40.523539" elapsed="0.486642"/>
</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-08-10T02:08:40.523014" elapsed="0.487291"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-08-10T02:08:40.510389" elapsed="0.500036"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.011585" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:41.010989" 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-08-10T02:08:41.017218" 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-08-10T02:08:41.017444" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:41.017020" elapsed="0.000466"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:41.018295" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee4d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:41.017696" elapsed="0.000660"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:41.018957" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:41.018571" elapsed="0.000478"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:41.019670" 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-08-10T02:08:41.019264" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:41.020529" 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-08-10T02:08:41.019914" elapsed="0.000653"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:41.021807" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:41.020815" elapsed="0.001023"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.022327" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:41.022001" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.022845" 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-08-10T02:08:41.022540" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.023363" 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-08-10T02:08:41.023038" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.023856" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:41.023559" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.024366" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:41.024048" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.024879" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee4d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:41.024562" 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-08-10T02:08:41.016499" elapsed="0.008476"/>
</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-08-10T02:08:41.026291" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:41.026046" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.026761" level="INFO">&lt;?xml version="1.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-08-10T02:08:41.026519" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:41.027265" level="INFO">${xml} = &lt;Element 'input' at 0x7777efc9d800&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-08-10T02:08:41.026962" elapsed="0.000331"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:41.027714" 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-08-10T02:08:41.027454" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:41.028282" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777efc9d490&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-08-10T02:08:41.027903" elapsed="0.000407"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:41.028874" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777efc9d440&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-08-10T02:08:41.028473" elapsed="0.000428"/>
</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-08-10T02:08:41.029045" elapsed="0.000264"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:41.029481" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:41.029885" 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-08-10T02:08:41.030265" 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-08-10T02:08:41.030664" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:41.031041" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:41.031438" elapsed="0.000486"/>
</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-08-10T02:08:41.032072" elapsed="0.000360"/>
</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-08-10T02:08:41.032583" elapsed="0.000359"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:41.033378" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfff2ed0&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-08-10T02:08:41.033093" 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-08-10T02:08:41.033553" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:41.034447" 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-08-10T02:08:41.033941" elapsed="0.000590"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:41.035185" 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-08-10T02:08:41.034674" elapsed="0.000573"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:41.505626" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:41.505871" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:41.506151" 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-08-10T02:08:41.035400" elapsed="0.470813"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.511552" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:41.506748" elapsed="0.004905"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ecbee4d0&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-08-10T02:08:41.025658" elapsed="0.486137"/>
</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-08-10T02:08:41.025121" elapsed="0.486833"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-08-10T02:08:41.010698" elapsed="0.501345"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.513316" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:41.512638" elapsed="0.000823"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:41.517123" 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-08-10T02:08:41.517307" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:41.516949" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:41.517978" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c680&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:41.517514" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:41.518481" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:41.518171" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:41.518935" 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-08-10T02:08:41.518661" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:41.519426" 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-08-10T02:08:41.519125" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:41.520469" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:41.519671" elapsed="0.000830"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.521022" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:41.520667" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.521566" 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-08-10T02:08:41.521230" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.522087" 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-08-10T02:08:41.521762" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.522610" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:41.522283" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.523130" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:41.522812" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.523658" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c680&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:41.523330" 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-08-10T02:08:41.516564" elapsed="0.007191"/>
</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-08-10T02:08:41.525357" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:41.525069" elapsed="0.000355"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:41.525822" level="INFO">&lt;?xml version="1.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-08-10T02:08:41.525574" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:41.526324" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfc9c040&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-08-10T02:08:41.526029" elapsed="0.000342"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:41.526793" 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-08-10T02:08:41.526522" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:41.527404" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfc9efc0&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-08-10T02:08:41.526988" elapsed="0.000473"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:41.527996" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfc9d620&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-08-10T02:08:41.527616" elapsed="0.000408"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:41.528174" elapsed="0.000301"/>
</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-08-10T02:08:41.528629" 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-08-10T02:08:41.529067" 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-08-10T02:08:41.529493" elapsed="0.000242"/>
</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-08-10T02:08:41.529885" 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-08-10T02:08:41.530286" 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-08-10T02:08:41.530699" 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-08-10T02:08:41.531208" elapsed="0.000386"/>
</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-08-10T02:08:41.531744" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:41.532543" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec2ac090&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-08-10T02:08:41.532239" 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-08-10T02:08:41.532721" elapsed="0.000283"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:41.533698" 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-08-10T02:08:41.533163" elapsed="0.000620"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:41.534493" 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-08-10T02:08:41.533932" elapsed="0.000594"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:42.006806" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:42.007151" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:42.007476" 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-08-10T02:08:41.534659" elapsed="0.472889"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.013090" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:42.008011" elapsed="0.005208"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfc9c680&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-08-10T02:08:41.524642" elapsed="0.488764"/>
</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-08-10T02:08:41.523929" elapsed="0.489606"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-08-10T02:08:41.512296" elapsed="0.501327"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.014811" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:42.014177" elapsed="0.000744"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:42.019977" 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-08-10T02:08:42.020138" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:42.019826" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:42.020798" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ad4e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:42.020328" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:42.021318" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:42.020986" elapsed="0.000380"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:42.021813" 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-08-10T02:08:42.021528" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:42.022283" 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-08-10T02:08:42.021994" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:42.023254" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:42.022483" elapsed="0.000802"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.023802" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:42.023468" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.024323" 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-08-10T02:08:42.023999" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.024862" 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-08-10T02:08:42.024542" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.025407" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:42.025055" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.025919" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:42.025609" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.026458" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ad4e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:42.026116" 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-08-10T02:08:42.019458" elapsed="0.007098"/>
</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-08-10T02:08:42.027886" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:42.027621" elapsed="0.000376"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.028421" level="INFO">&lt;?xml version="1.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-08-10T02:08:42.028142" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:42.028908" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec2aede0&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-08-10T02:08:42.028630" elapsed="0.000307"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:42.029416" 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-08-10T02:08:42.029083" elapsed="0.000383"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:42.030148" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec2aec50&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-08-10T02:08:42.029617" elapsed="0.000560"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:42.030736" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec2af6a0&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-08-10T02:08:42.030357" elapsed="0.000407"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:42.030909" 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-08-10T02:08:42.031358" 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-08-10T02:08:42.031779" 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-08-10T02:08:42.032168" 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-08-10T02:08:42.032579" 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-08-10T02:08:42.032963" 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-08-10T02:08:42.033386" 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-08-10T02:08:42.033898" elapsed="0.000346"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:42.034416" elapsed="0.000342"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:42.035185" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec129440&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-08-10T02:08:42.034913" 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-08-10T02:08:42.035385" elapsed="0.000256"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:42.036281" 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-08-10T02:08:42.035788" elapsed="0.000635"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:42.037100" 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-08-10T02:08:42.036577" elapsed="0.000555"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:42.507291" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:42.507569" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:42.507846" 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-08-10T02:08:42.037299" elapsed="0.470607"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.512928" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:42.508331" elapsed="0.004696"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec2ad4e0&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-08-10T02:08:42.027199" elapsed="0.485963"/>
</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-08-10T02:08:42.026705" elapsed="0.486581"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-08-10T02:08:42.013868" elapsed="0.499539"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.514563" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:42.513954" 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-08-10T02:08:42.520353" 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-08-10T02:08:42.520514" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:42.520192" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:42.521140" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec129bc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:42.520694" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:42.521633" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:42.521321" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:42.522143" 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-08-10T02:08:42.521858" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:42.522628" 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-08-10T02:08:42.522328" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:42.523758" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:42.522805" elapsed="0.000984"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.524277" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:42.523947" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.524794" 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-08-10T02:08:42.524489" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.525294" 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-08-10T02:08:42.524985" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.525831" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:42.525530" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.526327" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:42.526024" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.526841" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec129bc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:42.526539" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:42.519837" elapsed="0.007100"/>
</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-08-10T02:08:42.528228" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:42.527984" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:42.528689" level="INFO">&lt;?xml version="1.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-08-10T02:08:42.528449" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:42.529200" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec12b7e0&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-08-10T02:08:42.528929" elapsed="0.000299"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:42.529665" 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-08-10T02:08:42.529389" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:42.530247" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec12b6f0&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-08-10T02:08:42.529856" elapsed="0.000418"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:42.530850" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec12b560&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-08-10T02:08:42.530442" elapsed="0.000436"/>
</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-08-10T02:08:42.531021" elapsed="0.000263"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:42.531450" elapsed="0.000261"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:42.531860" elapsed="0.000235"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:42.532241" 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-08-10T02:08:42.532636" elapsed="0.000232"/>
</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-08-10T02:08:42.533010" elapsed="0.000229"/>
</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-08-10T02:08:42.533399" elapsed="0.001902"/>
</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-08-10T02:08:42.535469" elapsed="0.000359"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:42.535976" elapsed="0.000333"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:42.536754" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec129300&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-08-10T02:08:42.536479" 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-08-10T02:08:42.536929" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:42.537860" 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-08-10T02:08:42.537325" elapsed="0.000651"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:42.538675" 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-08-10T02:08:42.538124" elapsed="0.000582"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:43.008431" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:43.008627" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:43.008859" 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-08-10T02:08:42.538836" elapsed="0.470082"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.013868" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:43.009284" elapsed="0.004684"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec129bc0&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-08-10T02:08:42.527596" elapsed="0.486503"/>
</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-08-10T02:08:42.527083" elapsed="0.487139"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-08-10T02:08:42.513669" elapsed="0.500636"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.015447" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:43.014850" 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-08-10T02:08:43.020734" 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-08-10T02:08:43.020866" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:43.020596" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:43.021487" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec129a30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:43.021044" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:43.021991" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:43.021712" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:43.022454" 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-08-10T02:08:43.022169" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:43.022894" 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-08-10T02:08:43.022627" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:43.023838" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:43.023068" elapsed="0.000801"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.024357" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:43.024023" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.024861" 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-08-10T02:08:43.024553" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.025381" 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-08-10T02:08:43.025052" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.025886" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:43.025572" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.026400" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:43.026078" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.026905" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec129a30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:43.026600" 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-08-10T02:08:43.020243" elapsed="0.006757"/>
</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-08-10T02:08:43.028503" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:43.028072" elapsed="0.000496"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.028953" level="INFO">&lt;?xml version="1.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-08-10T02:08:43.028710" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:43.029483" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec129990&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-08-10T02:08:43.029192" elapsed="0.000321"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:43.029944" 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-08-10T02:08:43.029659" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:43.030542" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec1282c0&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-08-10T02:08:43.030134" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:43.031088" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec2af0b0&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-08-10T02:08:43.030717" 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-08-10T02:08:43.031259" 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-08-10T02:08:43.031685" elapsed="0.000252"/>
</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-08-10T02:08:43.032085" elapsed="0.000232"/>
</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-08-10T02:08:43.032480" elapsed="0.000232"/>
</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-08-10T02:08:43.032854" elapsed="0.000231"/>
</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-08-10T02:08:43.033225" 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-08-10T02:08:43.033615" elapsed="0.000378"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:43.034138" 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-08-10T02:08:43.034652" elapsed="0.000328"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:43.035413" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9d850&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-08-10T02:08:43.035130" 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-08-10T02:08:43.035591" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:43.036491" 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-08-10T02:08:43.035978" elapsed="0.000631"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:43.037283" 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-08-10T02:08:43.036755" elapsed="0.000560"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:43.509031" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:43.509233" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:43.509503" 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-08-10T02:08:43.037463" elapsed="0.472100"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.514725" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:43.509972" elapsed="0.004850"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec129a30&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-08-10T02:08:43.027686" elapsed="0.487272"/>
</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-08-10T02:08:43.027146" elapsed="0.487934"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-08-10T02:08:43.014563" elapsed="0.500600"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.516268" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:43.515713" elapsed="0.000691"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:43.521105" 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-08-10T02:08:43.521244" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:43.520968" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:43.521870" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d0d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:43.521440" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:43.522401" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:43.522102" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:43.522880" 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-08-10T02:08:43.522605" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:43.523319" 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-08-10T02:08:43.523052" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:43.524267" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:43.523509" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.524792" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:43.524472" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.525291" 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-08-10T02:08:43.524985" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.525816" 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-08-10T02:08:43.525500" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.526364" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:43.526038" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.526865" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:43.526560" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.527386" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d0d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:43.527060" 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-08-10T02:08:43.520625" elapsed="0.006859"/>
</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-08-10T02:08:43.528780" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:43.528532" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:43.529227" level="INFO">&lt;?xml version="1.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-08-10T02:08:43.528985" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:43.529751" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfc9c180&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-08-10T02:08:43.529484" elapsed="0.000294"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:43.530190" 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-08-10T02:08:43.529922" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:43.530938" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfc9ec50&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-08-10T02:08:43.530408" elapsed="0.000557"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:43.531515" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfc9e110&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-08-10T02:08:43.531114" elapsed="0.000428"/>
</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-08-10T02:08:43.531687" elapsed="0.000267"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:43.532102" elapsed="0.000288"/>
</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-08-10T02:08:43.532544" elapsed="0.000236"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:43.532925" elapsed="0.000231"/>
</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-08-10T02:08:43.533302" elapsed="0.000254"/>
</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-08-10T02:08:43.533701" elapsed="0.000231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:43.534108" elapsed="0.000378"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:43.534637" elapsed="0.000352"/>
</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-08-10T02:08:43.535134" elapsed="0.000343"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:43.535893" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfff23e0&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-08-10T02:08:43.535628" 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-08-10T02:08:43.536064" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:43.536983" 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-08-10T02:08:43.536469" elapsed="0.000631"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:43.537800" 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-08-10T02:08:43.537247" elapsed="0.000584"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:44.009870" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:44.010070" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:44.010376" 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-08-10T02:08:43.537978" elapsed="0.472467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.015492" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:44.010858" elapsed="0.004737"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfc9d0d0&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-08-10T02:08:43.528118" elapsed="0.487632"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-08-10T02:08:43.527631" elapsed="0.488245"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-08-10T02:08:43.515425" elapsed="0.500536"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.017122" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:44.016526" 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-08-10T02:08:44.021713" 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-08-10T02:08:44.021849" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:44.021569" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:44.022485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee5300e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:44.022029" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:44.022984" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:44.022702" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:44.023454" 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-08-10T02:08:44.023162" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:44.024051" 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-08-10T02:08:44.023631" elapsed="0.000446"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:44.024927" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:44.024226" elapsed="0.000732"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.025456" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:44.025117" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.025959" 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-08-10T02:08:44.025653" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.026489" 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-08-10T02:08:44.026149" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.026981" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:44.026681" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.027496" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:44.027172" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.027997" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee5300e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:44.027694" 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-08-10T02:08:44.021180" elapsed="0.006914"/>
</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-08-10T02:08:44.029395" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:44.029132" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.029840" level="INFO">&lt;?xml version="1.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-08-10T02:08:44.029597" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:44.030360" level="INFO">${xml} = &lt;Element 'input' at 0x7777ecbe0ea0&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-08-10T02:08:44.030040" elapsed="0.000349"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:44.030827" 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-08-10T02:08:44.030570" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:44.031407" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ecbe1bc0&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-08-10T02:08:44.031016" elapsed="0.000420"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:44.031942" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ecbe1030&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-08-10T02:08:44.031583" elapsed="0.000386"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:44.032110" 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-08-10T02:08:44.032538" elapsed="0.000254"/>
</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-08-10T02:08:44.032940" elapsed="0.000235"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:44.033320" 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-08-10T02:08:44.033717" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:44.034092" 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-08-10T02:08:44.034505" elapsed="0.000347"/>
</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-08-10T02:08:44.035000" elapsed="0.000489"/>
</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-08-10T02:08:44.035642" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:44.036406" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3966b0&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-08-10T02:08:44.036124" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:44.036583" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:44.037453" 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-08-10T02:08:44.036975" elapsed="0.000558"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:44.038167" 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-08-10T02:08:44.037679" elapsed="0.000519"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:44.511319" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:44.511666" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:44.511904" 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-08-10T02:08:44.038375" elapsed="0.473591"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.516959" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:44.512403" elapsed="0.004655"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ee5300e0&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-08-10T02:08:44.028743" elapsed="0.488451"/>
</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-08-10T02:08:44.028242" elapsed="0.489074"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-08-10T02:08:44.016191" elapsed="0.501248"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.518610" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:44.517962" 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-08-10T02:08:44.523955" 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-08-10T02:08:44.524151" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:44.523757" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:44.525039" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:44.524426" elapsed="0.000653"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:44.525712" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:44.525296" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:44.526354" 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-08-10T02:08:44.525958" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:44.527023" 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-08-10T02:08:44.526640" elapsed="0.000421"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:44.528185" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:44.527270" elapsed="0.000946"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.528724" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:44.528397" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.529222" 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-08-10T02:08:44.528918" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.529738" 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-08-10T02:08:44.529426" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.530225" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:44.529926" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.530759" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:44.530436" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.531259" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:44.530955" 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-08-10T02:08:44.523249" elapsed="0.008123"/>
</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-08-10T02:08:44.532840" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:44.532589" elapsed="0.000355"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:44.533354" level="INFO">&lt;?xml version="1.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-08-10T02:08:44.533088" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:44.533848" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec394d60&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-08-10T02:08:44.533577" elapsed="0.000299"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:44.534279" 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-08-10T02:08:44.534022" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:44.534898" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec395670&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-08-10T02:08:44.534511" elapsed="0.000415"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:44.535467" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec368040&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-08-10T02:08:44.535074" 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-08-10T02:08:44.535665" elapsed="0.000263"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:44.536075" elapsed="0.000253"/>
</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-08-10T02:08:44.536494" 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-08-10T02:08:44.536916" elapsed="0.000232"/>
</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-08-10T02:08:44.537290" elapsed="0.000250"/>
</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-08-10T02:08:44.537682" elapsed="0.000231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:44.538055" elapsed="0.000374"/>
</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-08-10T02:08:44.538593" 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-08-10T02:08:44.539091" elapsed="0.000346"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:44.539864" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0db920&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-08-10T02:08:44.539600" 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-08-10T02:08:44.540037" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:44.540973" 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-08-10T02:08:44.540455" elapsed="0.000638"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:44.541791" 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-08-10T02:08:44.541241" elapsed="0.000581"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:45.012165" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:45.012453" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:45.012766" 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-08-10T02:08:44.541953" elapsed="0.470877"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.018826" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:45.013323" elapsed="0.005612"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec395940&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-08-10T02:08:44.532182" elapsed="0.486896"/>
</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-08-10T02:08:44.531523" elapsed="0.487685"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-08-10T02:08:44.517675" elapsed="0.501624"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.020630" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:45.019968" 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-08-10T02:08:45.025922" 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-08-10T02:08:45.026095" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:45.025770" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:45.026764" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d97b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:45.026276" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:45.027287" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:45.026950" elapsed="0.000363"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:45.027758" 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-08-10T02:08:45.027486" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:45.028205" 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-08-10T02:08:45.027935" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:45.029135" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:45.028398" elapsed="0.000768"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.029685" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:45.029330" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.030185" 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-08-10T02:08:45.029880" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.030768" 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-08-10T02:08:45.030409" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.031279" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:45.030975" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.031807" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:45.031496" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.032312" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d97b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:45.032005" 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-08-10T02:08:45.025390" elapsed="0.007039"/>
</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-08-10T02:08:45.033780" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:45.033529" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.034228" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:45.033984" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:45.034746" level="INFO">${xml} = &lt;Element 'input' at 0x7777dff30cc0&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-08-10T02:08:45.034452" elapsed="0.000355"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:45.035245" 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-08-10T02:08:45.034969" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:45.035844" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dff30630&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-08-10T02:08:45.035459" elapsed="0.000413"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:45.036568" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec0da2a0&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-08-10T02:08:45.036022" elapsed="0.000574"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:45.036747" elapsed="0.000275"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:45.037175" elapsed="0.000279"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:45.037609" 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-08-10T02:08:45.038000" elapsed="0.000257"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:45.038455" elapsed="0.000304"/>
</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-08-10T02:08:45.038939" 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-08-10T02:08:45.039383" 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-08-10T02:08:45.039893" elapsed="0.000347"/>
</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-08-10T02:08:45.040415" elapsed="0.000365"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:45.041198" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda3f60&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-08-10T02:08:45.040933" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:45.041390" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:45.042262" 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-08-10T02:08:45.041782" elapsed="0.000577"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:45.043019" 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-08-10T02:08:45.042506" elapsed="0.000544"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:45.513709" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:45.513934" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:45.514214" 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-08-10T02:08:45.043214" elapsed="0.471061"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.519612" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:45.514799" elapsed="0.004912"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec0d97b0&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-08-10T02:08:45.033101" elapsed="0.486752"/>
</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-08-10T02:08:45.032585" elapsed="0.487395"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-08-10T02:08:45.019647" elapsed="0.500419"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.521194" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:45.520643" elapsed="0.000651"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:45.526057" 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-08-10T02:08:45.526229" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:45.525908" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:45.526892" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:45.526429" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:45.527388" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:45.527086" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:45.527830" 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-08-10T02:08:45.527564" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:45.528269" 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-08-10T02:08:45.528003" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:45.529412" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:45.528460" elapsed="0.001037"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.530002" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:45.529667" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.530520" 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-08-10T02:08:45.530194" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.531048" 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-08-10T02:08:45.530710" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.531555" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:45.531238" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.532051" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:45.531748" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.532570" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda3010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:45.532243" 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-08-10T02:08:45.525538" elapsed="0.007128"/>
</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-08-10T02:08:45.533961" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:45.533715" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:45.534419" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:45.534161" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:45.534885" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec21ff60&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-08-10T02:08:45.534619" elapsed="0.000293"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:45.535370" 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-08-10T02:08:45.535084" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:45.535941" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec21cd60&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-08-10T02:08:45.535562" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:45.536490" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec21dc60&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-08-10T02:08:45.536113" elapsed="0.000404"/>
</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-08-10T02:08:45.536660" 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-08-10T02:08:45.537104" 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-08-10T02:08:45.537529" elapsed="0.000239"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:45.537911" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:45.538291" elapsed="0.000257"/>
</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-08-10T02:08:45.538695" 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-08-10T02:08:45.539110" 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-08-10T02:08:45.539636" elapsed="0.000444"/>
</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-08-10T02:08:45.540225" elapsed="0.000349"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:45.540989" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec1b7830&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-08-10T02:08:45.540724" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:45.541162" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:45.542036" 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-08-10T02:08:45.541570" elapsed="0.000545"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:45.542773" 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-08-10T02:08:45.542259" elapsed="0.000544"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:46.014708" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:46.015009" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:46.015290" 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-08-10T02:08:45.542931" elapsed="0.472454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.020540" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:46.015853" elapsed="0.004786"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfda3010&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-08-10T02:08:45.533305" elapsed="0.487475"/>
</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-08-10T02:08:45.532813" elapsed="0.488091"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-08-10T02:08:45.520317" elapsed="0.500673"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.022118" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:46.021553" elapsed="0.000664"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:46.027678" 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-08-10T02:08:46.027874" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:46.027468" elapsed="0.000447"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:46.028757" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1aa1b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:46.028124" elapsed="0.000672"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:46.029423" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:46.029008" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:46.030039" 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-08-10T02:08:46.029667" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:46.030684" 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-08-10T02:08:46.030279" elapsed="0.000442"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:46.031951" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:46.030925" elapsed="0.001056"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.032495" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:46.032146" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.032991" 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-08-10T02:08:46.032687" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.033506" 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-08-10T02:08:46.033179" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.034027" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:46.033730" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.034542" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:46.034219" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.035038" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1aa1b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:46.034735" 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-08-10T02:08:46.026943" elapsed="0.008190"/>
</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-08-10T02:08:46.036653" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:46.036221" elapsed="0.000530"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.037140" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:46.036895" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:46.037637" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec1a8cc0&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-08-10T02:08:46.037365" elapsed="0.000299"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:46.038078" 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-08-10T02:08:46.037810" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:46.038664" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec1a8e50&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-08-10T02:08:46.038268" elapsed="0.000423"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:46.039197" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec1a9cb0&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-08-10T02:08:46.038837" elapsed="0.000388"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:46.039416" 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-08-10T02:08:46.039829" elapsed="0.000254"/>
</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-08-10T02:08:46.040232" elapsed="0.000264"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:46.040646" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:46.041024" elapsed="0.000232"/>
</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-08-10T02:08:46.041417" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:46.041794" 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-08-10T02:08:46.042290" elapsed="0.000358"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:46.042793" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:46.043570" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec1abb00&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-08-10T02:08:46.043287" 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-08-10T02:08:46.043744" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:46.044628" 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-08-10T02:08:46.044129" elapsed="0.000612"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:46.045408" 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-08-10T02:08:46.044888" elapsed="0.000552"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:46.515934" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:46.516140" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:46.516395" 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-08-10T02:08:46.045570" elapsed="0.470888"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.522825" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:46.516843" elapsed="0.006044"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec1aa1b0&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-08-10T02:08:46.035832" elapsed="0.487138"/>
</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-08-10T02:08:46.035307" elapsed="0.487736"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-08-10T02:08:46.021236" elapsed="0.501857"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.523838" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:46.523447" 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-08-10T02:08:46.528753" 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-08-10T02:08:46.528915" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:46.528523" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:46.529533" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1b4770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:46.529095" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:46.529989" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:46.529713" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:46.530447" 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-08-10T02:08:46.530163" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:46.530934" 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-08-10T02:08:46.530665" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:46.531848" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:46.531107" elapsed="0.000772"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.532376" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:46.532036" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.532874" 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-08-10T02:08:46.532571" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.533388" 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-08-10T02:08:46.533062" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.533875" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:46.533579" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.534386" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:46.534068" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.534884" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1b4770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:46.534582" elapsed="0.000342"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:46.528024" elapsed="0.006953"/>
</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-08-10T02:08:46.536283" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:46.536032" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:46.536743" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:46.536502" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:46.537212" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec1b6bb0&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-08-10T02:08:46.536946" elapsed="0.000293"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:46.537658" 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-08-10T02:08:46.537400" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:46.538251" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec1b62f0&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-08-10T02:08:46.537876" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:46.538949" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec1b6340&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-08-10T02:08:46.538441" elapsed="0.000535"/>
</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-08-10T02:08:46.539122" 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-08-10T02:08:46.539587" elapsed="0.000261"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:46.540000" 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-08-10T02:08:46.540402" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:46.540782" elapsed="0.000231"/>
</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-08-10T02:08:46.541155" elapsed="0.000248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:46.541547" elapsed="0.000345"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:46.542036" 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-08-10T02:08:46.542536" elapsed="0.000327"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:46.543276" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda3fb0&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-08-10T02:08:46.543011" 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-08-10T02:08:46.543466" elapsed="0.000274"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:46.544364" 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-08-10T02:08:46.543884" elapsed="0.000564"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:46.545086" 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-08-10T02:08:46.544590" elapsed="0.000526"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:47.016797" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:47.017130" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:47.017428" 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-08-10T02:08:46.545243" elapsed="0.472248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.022692" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:47.017949" elapsed="0.004840"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec1b4770&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-08-10T02:08:46.535646" elapsed="0.487282"/>
</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-08-10T02:08:46.535121" elapsed="0.487934"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-08-10T02:08:46.523240" elapsed="0.499901"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.024320" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:47.023707" elapsed="0.000755"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:47.029549" 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-08-10T02:08:47.029761" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:47.029311" elapsed="0.000492"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:47.030662" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda16c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:47.030018" elapsed="0.000683"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:47.031308" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:47.030916" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:47.031994" 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-08-10T02:08:47.031580" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:47.032664" 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-08-10T02:08:47.032239" elapsed="0.000457"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:47.033851" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:47.032849" elapsed="0.001033"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.034390" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:47.034043" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.034886" 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-08-10T02:08:47.034583" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.035400" 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-08-10T02:08:47.035074" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.035902" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:47.035591" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.036415" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:47.036095" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.036918" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda16c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:47.036611" 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-08-10T02:08:47.028810" elapsed="0.008202"/>
</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-08-10T02:08:47.038309" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;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-08-10T02:08:47.038060" elapsed="0.000374"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.038825" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:47.038579" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:47.039306" level="INFO">${xml} = &lt;Element 'input' at 0x7777dff30d10&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-08-10T02:08:47.039032" elapsed="0.000319"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:47.039810" 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-08-10T02:08:47.039501" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:47.040430" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dff305e0&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-08-10T02:08:47.040007" elapsed="0.000451"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:47.040995" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dff306d0&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-08-10T02:08:47.040607" elapsed="0.000415"/>
</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-08-10T02:08:47.041167" 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-08-10T02:08:47.041612" 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-08-10T02:08:47.042044" elapsed="0.000240"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:47.042447" elapsed="0.000237"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:47.042830" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:47.043209" elapsed="0.000250"/>
</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-08-10T02:08:47.043605" elapsed="0.000396"/>
</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-08-10T02:08:47.044146" elapsed="0.000488"/>
</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-08-10T02:08:47.044780" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:47.045556" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3691c0&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-08-10T02:08:47.045269" 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-08-10T02:08:47.045731" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:47.046651" 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-08-10T02:08:47.046121" elapsed="0.000655"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:47.047472" 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-08-10T02:08:47.046922" elapsed="0.000581"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:47.517945" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:47.518144" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:47.518401" 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-08-10T02:08:47.047632" elapsed="0.470830"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.523392" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:47.518840" elapsed="0.004652"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfda16c0&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-08-10T02:08:47.037671" elapsed="0.485952"/>
</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-08-10T02:08:47.037160" elapsed="0.486584"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-08-10T02:08:47.023420" elapsed="0.500406"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.524867" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:47.524440" elapsed="0.000490"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:47.537234" 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-08-10T02:08:47.537397" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:47.537089" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:47.538008" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:47.537577" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:47.538530" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:47.538189" elapsed="0.000368"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:47.538979" 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-08-10T02:08:47.538708" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:47.539440" 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-08-10T02:08:47.539153" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:47.540419" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:47.539615" elapsed="0.000835"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.540933" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:47.540607" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.541447" 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-08-10T02:08:47.541126" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.541950" 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-08-10T02:08:47.541639" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.542455" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:47.542140" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.542952" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:47.542648" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.543462" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:47.543143" 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-08-10T02:08:47.536736" elapsed="0.006823"/>
</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-08-10T02:08:47.545053" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;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-08-10T02:08:47.544805" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:47.545519" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:47.545258" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:47.546025" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec369080&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-08-10T02:08:47.545757" elapsed="0.000295"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:47.546467" 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-08-10T02:08:47.546195" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:47.547038" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec36b2e0&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-08-10T02:08:47.546656" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:47.547605" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec36ad40&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-08-10T02:08:47.547211" 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-08-10T02:08:47.547776" elapsed="0.000279"/>
</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-08-10T02:08:47.548204" 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-08-10T02:08:47.548630" elapsed="0.000239"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:47.549013" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:47.549410" elapsed="0.000237"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:47.549792" elapsed="0.000234"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:47.550170" elapsed="0.000381"/>
</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-08-10T02:08:47.550696" 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-08-10T02:08:47.551196" elapsed="0.000348"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:47.551963" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbe12b0&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-08-10T02:08:47.551696" 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-08-10T02:08:47.552163" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:47.553088" 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-08-10T02:08:47.552574" elapsed="0.000632"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:47.553897" 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-08-10T02:08:47.553369" elapsed="0.000559"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:48.018865" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:48.019083" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:48.019330" 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-08-10T02:08:47.554058" elapsed="0.465370"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.024953" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:48.019870" elapsed="0.005181"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec369440&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-08-10T02:08:47.544411" elapsed="0.480775"/>
</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-08-10T02:08:47.543709" elapsed="0.481600"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-08-10T02:08:47.524115" elapsed="0.501315"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.026553" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:48.025958" 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-08-10T02:08:48.031542" 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-08-10T02:08:48.031694" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:48.031392" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:48.032361" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0e00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:48.031873" elapsed="0.000517"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:48.032890" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:48.032549" elapsed="0.000367"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:48.033358" 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-08-10T02:08:48.033068" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:48.033803" 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-08-10T02:08:48.033535" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:48.034734" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:48.033977" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.035251" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:48.034924" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.035771" 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-08-10T02:08:48.035461" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.036295" 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-08-10T02:08:48.035960" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.036809" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:48.036505" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.037309" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:48.037002" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.037827" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0e00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:48.037523" 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-08-10T02:08:48.031012" elapsed="0.006909"/>
</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-08-10T02:08:48.039396" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:48.039114" elapsed="0.000349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.039848" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:48.039604" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:48.040400" level="INFO">${xml} = &lt;Element 'input' at 0x7777ecbed8a0&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-08-10T02:08:48.040085" elapsed="0.000345"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:48.040851" 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-08-10T02:08:48.040577" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:48.041585" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ecbefe20&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-08-10T02:08:48.041041" elapsed="0.000572"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:48.042134" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ee531d50&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-08-10T02:08:48.041763" 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-08-10T02:08:48.042308" 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-08-10T02:08:48.042745" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:48.043151" elapsed="0.000253"/>
</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-08-10T02:08:48.043550" 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-08-10T02:08:48.043930" elapsed="0.000231"/>
</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-08-10T02:08:48.044329" 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-08-10T02:08:48.044727" elapsed="0.000359"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:48.045230" 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-08-10T02:08:48.045738" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:48.046505" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfff1b20&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-08-10T02:08:48.046219" 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-08-10T02:08:48.046685" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:48.047586" 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-08-10T02:08:48.047073" elapsed="0.000595"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:48.048362" 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-08-10T02:08:48.047811" elapsed="0.000618"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:48.519846" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:48.520035" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:48.520280" 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-08-10T02:08:48.048568" elapsed="0.471817"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.525380" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:48.520801" elapsed="0.004686"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ecbe0e00&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-08-10T02:08:48.038659" elapsed="0.486958"/>
</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-08-10T02:08:48.038068" elapsed="0.487669"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-08-10T02:08:48.025672" elapsed="0.500148"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.526929" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:48.526368" elapsed="0.000661"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:48.532097" 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-08-10T02:08:48.532246" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:48.531957" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:48.532875" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1080&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:48.532447" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:48.533331" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:48.533055" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:48.533795" 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-08-10T02:08:48.533527" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:48.534248" 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-08-10T02:08:48.533970" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:48.535279" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:48.534482" elapsed="0.000828"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.535809" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:48.535486" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.536312" 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-08-10T02:08:48.536003" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.536871" 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-08-10T02:08:48.536550" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.537389" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:48.537064" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.537890" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:48.537587" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.538429" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1080&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:48.538085" 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-08-10T02:08:48.531613" elapsed="0.006916"/>
</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-08-10T02:08:48.539836" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:48.539586" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:48.540283" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:48.540036" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:48.540801" level="INFO">${xml} = &lt;Element 'input' at 0x7777dfc9fa10&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-08-10T02:08:48.540504" elapsed="0.000324"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:48.541228" 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-08-10T02:08:48.540972" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:48.541810" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777dfc9e390&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-08-10T02:08:48.541437" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:48.542359" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777dfc9c450&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-08-10T02:08:48.541985" elapsed="0.000403"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:48.542533" elapsed="0.000292"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:48.542973" elapsed="0.000252"/>
</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-08-10T02:08:48.543391" elapsed="0.000234"/>
</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-08-10T02:08:48.543774" elapsed="0.000231"/>
</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-08-10T02:08:48.544155" elapsed="0.000259"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:48.544587" 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-08-10T02:08:48.544978" elapsed="0.000349"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:48.545491" elapsed="0.000466"/>
</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-08-10T02:08:48.546107" elapsed="0.000353"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:48.546890" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9f8d0&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-08-10T02:08:48.546612" 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-08-10T02:08:48.547064" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:48.547935" 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-08-10T02:08:48.547475" elapsed="0.000537"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:48.548700" 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-08-10T02:08:48.548165" elapsed="0.000567"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:49.021079" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:49.021435" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:49.021692" 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-08-10T02:08:48.548863" elapsed="0.472889"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.026906" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:49.022177" elapsed="0.004828"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfff1080&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-08-10T02:08:48.539167" elapsed="0.487972"/>
</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-08-10T02:08:48.538679" elapsed="0.488581"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-08-10T02:08:48.526046" elapsed="0.501334"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.028652" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:49.027955" elapsed="0.000818"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:49.032946" 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-08-10T02:08:49.033101" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:49.032763" elapsed="0.000367"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:49.033713" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f1f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:49.033282" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:49.034175" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:49.033895" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:49.034635" 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-08-10T02:08:49.034366" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:49.035072" 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-08-10T02:08:49.034808" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:49.035846" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:49.035244" elapsed="0.000633"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.036406" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:49.036035" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.036938" 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-08-10T02:08:49.036603" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.037471" 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-08-10T02:08:49.037134" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.037972" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:49.037666" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.038495" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:49.038168" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.038998" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f1f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:49.038691" 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-08-10T02:08:49.032405" elapsed="0.006690"/>
</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-08-10T02:08:49.040429" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:49.040158" elapsed="0.000376"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.040964" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:49.040679" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:49.041475" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec2aec00&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-08-10T02:08:49.041176" elapsed="0.000327"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:49.042109" 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-08-10T02:08:49.041653" elapsed="0.000505"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:49.042685" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec2ad0d0&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-08-10T02:08:49.042304" elapsed="0.000408"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:49.043206" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec2af290&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-08-10T02:08:49.042860" elapsed="0.000374"/>
</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-08-10T02:08:49.043399" 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-08-10T02:08:49.043824" 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-08-10T02:08:49.044237" elapsed="0.000258"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:49.044643" 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-08-10T02:08:49.045050" elapsed="0.000252"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:49.045466" elapsed="0.000232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:49.045843" elapsed="0.000321"/>
</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-08-10T02:08:49.046308" elapsed="0.000335"/>
</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-08-10T02:08:49.046787" elapsed="0.000327"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:49.047549" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec2af6a0&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-08-10T02:08:49.047264" 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-08-10T02:08:49.047724" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:49.048532" 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-08-10T02:08:49.048112" elapsed="0.000490"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:49.049223" 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-08-10T02:08:49.048744" elapsed="0.000542"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:49.522728" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:49.522896" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:49.523131" 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-08-10T02:08:49.049437" elapsed="0.473766"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.528203" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:49.523646" elapsed="0.004661"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777dfc9f1f0&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-08-10T02:08:49.039768" elapsed="0.488714"/>
</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-08-10T02:08:49.039245" elapsed="0.489359"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-08-10T02:08:49.027623" elapsed="0.501065"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.529859" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:49.529265" elapsed="0.000694"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:49.535668" 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-08-10T02:08:49.535815" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:49.535517" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:49.536450" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ade90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:49.535996" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:49.536919" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:49.536631" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:49.537418" 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-08-10T02:08:49.537123" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:49.537862" 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-08-10T02:08:49.537595" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:49.538873" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:49.538035" elapsed="0.000869"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.539413" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:49.539066" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.539921" 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-08-10T02:08:49.539611" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.540503" 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-08-10T02:08:49.540165" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.541003" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:49.540696" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.541546" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:49.541217" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.542050" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ade90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:49.541743" 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-08-10T02:08:49.535114" elapsed="0.007041"/>
</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-08-10T02:08:49.543492" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:49.543223" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:49.543940" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:49.543694" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:49.544432" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec036250&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-08-10T02:08:49.544142" elapsed="0.000318"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:49.544868" 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-08-10T02:08:49.544604" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:49.545493" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec035490&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-08-10T02:08:49.545092" elapsed="0.000429"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:49.546037" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec035030&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-08-10T02:08:49.545674" elapsed="0.000390"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:49.546209" 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-08-10T02:08:49.546646" 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-08-10T02:08:49.547056" elapsed="0.000240"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:49.547462" 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-08-10T02:08:49.547848" 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-08-10T02:08:49.548281" elapsed="0.000284"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:49.548712" 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-08-10T02:08:49.549227" elapsed="0.000362"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:49.549736" elapsed="0.000435"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:49.550612" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0db0b0&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-08-10T02:08:49.550324" 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-08-10T02:08:49.550786" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:49.551636" 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-08-10T02:08:49.551176" elapsed="0.000536"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:49.552356" 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-08-10T02:08:49.551856" elapsed="0.000533"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:50.023263" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:50.023599" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:50.023855" 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-08-10T02:08:49.552518" elapsed="0.471397"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.029034" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:50.024372" elapsed="0.004758"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec2ade90&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-08-10T02:08:49.542829" elapsed="0.486435"/>
</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-08-10T02:08:49.542307" elapsed="0.487140"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-08-10T02:08:49.528926" elapsed="0.500608"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.030683" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:50.030093" 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-08-10T02:08:50.036146" 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-08-10T02:08:50.036291" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:50.035998" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:50.036913" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ae2a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:50.036490" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:50.037408" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:50.037096" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:50.037860" 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-08-10T02:08:50.037586" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:50.038300" 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-08-10T02:08:50.038032" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:50.039104" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:50.038491" elapsed="0.000643"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.039640" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:50.039294" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.040134" 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-08-10T02:08:50.039831" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.040655" 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-08-10T02:08:50.040321" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.041142" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:50.040844" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.041693" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:50.041375" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.042194" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ae2a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:50.041889" 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-08-10T02:08:50.035637" elapsed="0.006651"/>
</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-08-10T02:08:50.043606" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:50.043356" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.044093" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:50.043850" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:50.044585" level="INFO">${xml} = &lt;Element 'input' at 0x7777ec1ae340&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-08-10T02:08:50.044294" elapsed="0.000318"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:50.046843" 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-08-10T02:08:50.044759" elapsed="0.002133"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:50.047419" level="INFO">${origflow} = &lt;Element 'flow' at 0x7777ec035300&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-08-10T02:08:50.047038" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:50.047947" level="INFO">${updflow} = &lt;Element 'flow' at 0x7777ec034860&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-08-10T02:08:50.047593" elapsed="0.000382"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:08:50.048118" 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-08-10T02:08:50.048548" elapsed="0.000253"/>
</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-08-10T02:08:50.048950" elapsed="0.000234"/>
</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-08-10T02:08:50.049382" elapsed="0.000242"/>
</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-08-10T02:08:50.049776" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:50.050154" elapsed="0.000248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:50.050548" elapsed="0.000335"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:50.051027" elapsed="0.000339"/>
</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-08-10T02:08:50.051512" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:50.052277" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec2aeac0&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-08-10T02:08:50.051995" 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-08-10T02:08:50.052477" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:50.053285" 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-08-10T02:08:50.052867" elapsed="0.000549"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:50.054020" 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-08-10T02:08:50.053563" elapsed="0.000488"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:50.524905" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:50.525075" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:50.525311" 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-08-10T02:08:50.054181" elapsed="0.471226"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:50.530307" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:50.525837" elapsed="0.004603"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7777ec1ae2a0&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-08-10T02:08:50.042949" elapsed="0.487626"/>
</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-08-10T02:08:50.042454" elapsed="0.488242"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-08-10T02:08:50.029786" elapsed="0.500991"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-08-10T02:08:25.413015" elapsed="25.117837"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.532089" 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-08-10T02:08:50.531189" elapsed="3.001188"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:08:53.538124" 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-08-10T02:08:53.532925" elapsed="0.005329"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:08:53.668699" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=98.286s, table=0, n_packets=18, n_bytes=1412, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x1, duration=28.069s, table=2, n_packets=0, n_bytes=0, priority=1,ip,nw_dst=10.0.1.0/24 actions=drop
 cookie=0x1f, duration=16.509s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=TABLE
 cookie=0x24, duration=16.011s, table=2, n_packets=0, n_bytes=0, priority=36,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x26, duration=15.512s, table=2, n_packets=0, n_bytes=0, priority=38,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0xdc, duration=3.481s, table=2, n_packets=0, n_bytes=0, priority=220,ip,nw_dst=10.0.0.0/24 actions=write_metadata:0xa/0xc
 cookie=0xdb, duration=3.983s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xda, duration=4.485s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=4.987s, 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.014s, 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.513s, 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.002s, 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.501s, 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.485s, 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.519s, 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.022s, 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.487s, 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.982s, 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.452s, table=2, n_packets=0, n_bytes=0, priority=201,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xca, duration=7.992s, 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.490s, 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.989s, table=2, n_packets=0, n_bytes=0, priority=204,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x6b, duration=10.996s, 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.498s, 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.993s, 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.497s, 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.497s, 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=12s, 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.480s, 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.001s, 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.507s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=TABLE
 cookie=0x2b, duration=15.009s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=drop
 cookie=0x17, duration=18.008s, 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.010s, 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.512s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=drop
 cookie=0x14, duration=19.517s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=drop
 cookie=0x13, duration=20.018s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=drop
 cookie=0x12, duration=20.517s, 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.018s, 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.520s, 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.019s, 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.519s, 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.023s, 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.525s, 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.025s, 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.525s, 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.025s, 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.529s, 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.032s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=TABLE
 cookie=0x2, duration=27.531s, 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-08-10T02:08:53.538652" elapsed="0.130313"/>
</kw>
<doc>Update all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-08-10T02:08:25.412618" elapsed="28.256508"/>
</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-08-10T02:08:53.680611" 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-08-10T02:08:53.680784" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:53.680450" elapsed="0.000363"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:53.681458" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ad490&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:53.680970" elapsed="0.000516"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:53.681922" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:53.681638" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:53.682385" 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-08-10T02:08:53.682099" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:53.682833" 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-08-10T02:08:53.682563" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:53.683687" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:53.683007" elapsed="0.000711"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.684224" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.683881" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.684751" 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-08-10T02:08:53.684434" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.685260" 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-08-10T02:08:53.684941" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.685774" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.685466" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.686285" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.685972" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.686813" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ad490&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.686496" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:53.680086" elapsed="0.006827"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.687513" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:53.687061" elapsed="0.000482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.687936" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:53.687694" 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-08-10T02:08:53.695734" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:53.695421" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:53.702489" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:53.703081" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:53.703210" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:53.695928" elapsed="0.007315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.703681" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.703425" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.706428" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.703875" 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-08-10T02:08:53.708655" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-08-10T02:08:53.706564" elapsed="0.002198"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.706537" elapsed="0.002261"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:53.708999" 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-08-10T02:08:53.709310" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:53.709124" elapsed="0.000284"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:53.709102" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.709485" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:53.711773" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:53.711837" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:53.695076" elapsed="0.016793"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.714885" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:53.712656" elapsed="0.002293"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.712632" elapsed="0.002347"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.715827" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.715221" elapsed="0.000649"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.716417" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.716051" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:53.716494" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:53.716670" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:53.712169" elapsed="0.004526"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:53.716851" 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-08-10T02:08:53.694496" elapsed="0.022815"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.725147" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:53.724850" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:53.734361" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:53.736914" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:53.737354" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:53.725301" elapsed="0.012093"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.737973" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.737619" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.743387" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.738235" elapsed="0.006047"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.746846" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:53.744401" elapsed="0.002514"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.744375" elapsed="0.002570"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:53.770514" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:53.770561" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:53.747141" elapsed="0.023444"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:53.772421" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:53.770665" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.770646" elapsed="0.001856"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:53.772535" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:53.772732" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:53.772777" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:53.724473" elapsed="0.048327"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.775057" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:53.773367" elapsed="0.001736"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.773348" elapsed="0.001777"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.775731" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.775304" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.776270" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.775920" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:53.776365" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:53.776545" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:53.773019" 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-08-10T02:08:53.776727" 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-08-10T02:08:53.723833" elapsed="0.053351"/>
</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-08-10T02:08:53.676485" elapsed="0.100755"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:53.669513" elapsed="0.107904"/>
</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-08-10T02:08:53.788420" 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-08-10T02:08:53.788561" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:53.788257" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:53.789148" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee5338d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:53.788741" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:53.789627" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:53.789328" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:53.790071" 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-08-10T02:08:53.789804" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:53.790539" 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-08-10T02:08:53.790246" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:53.791366" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:53.790713" elapsed="0.000686"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.791885" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.791555" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.792463" 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-08-10T02:08:53.792120" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.792983" 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-08-10T02:08:53.792657" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.793519" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.793186" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.794037" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.793715" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.794570" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee5338d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.794233" 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-08-10T02:08:53.787919" elapsed="0.006749"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.795201" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:53.794816" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.795686" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:08:53.795439" 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-08-10T02:08:53.803569" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:53.803201" elapsed="0.000395"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:53.809031" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:53.809610" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:53.809714" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:53.803728" elapsed="0.006013"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.810176" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.809906" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.813471" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.810389" elapsed="0.003156"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:53.816112" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-08-10T02:08:53.813647" elapsed="0.002563"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.813619" elapsed="0.002626"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:53.816467" 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-08-10T02:08:53.816842" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:53.816653" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:53.816628" elapsed="0.000318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.816992" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:53.819293" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:53.819379" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:53.802880" elapsed="0.016533"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.821715" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:53.820137" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.820120" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.822349" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.821933" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.822887" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.822539" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:53.822963" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:53.823140" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:53.819714" 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-08-10T02:08:53.823371" 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-08-10T02:08:53.802288" elapsed="0.021542"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.831603" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:53.831289" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:53.840507" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:53.843019" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:53.843471" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:53.831756" elapsed="0.011754"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.844089" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.843735" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.849477" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.844375" elapsed="0.006033"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.852675" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:53.850508" elapsed="0.002216"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.850482" elapsed="0.002265"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:53.876898" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:53.876948" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:53.852886" elapsed="0.024086"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:53.878784" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:53.877055" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.877035" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:53.878910" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:53.879113" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:53.879158" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:53.830901" elapsed="0.048280"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.881476" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:53.879793" elapsed="0.001728"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.879774" elapsed="0.001769"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.882114" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.881693" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.882687" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.882306" elapsed="0.000409"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:53.882765" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:53.882957" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:53.879452" 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-08-10T02:08:53.883146" 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-08-10T02:08:53.830265" elapsed="0.053398"/>
</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-08-10T02:08:53.784530" elapsed="0.099189"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:53.777632" elapsed="0.106210"/>
</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-08-10T02:08:53.895019" 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-08-10T02:08:53.895161" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:53.894879" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:53.895795" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e1b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:53.895396" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:53.896252" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:53.895974" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:53.896720" 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-08-10T02:08:53.896449" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:53.897162" 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-08-10T02:08:53.896896" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:53.897939" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:53.897361" elapsed="0.000609"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.898475" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.898124" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.899033" 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-08-10T02:08:53.898711" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.899601" 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-08-10T02:08:53.899226" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.900266" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.899796" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.901007" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.900564" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.901748" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e1b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:53.901280" elapsed="0.000527"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:53.894546" elapsed="0.007338"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.902659" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:53.902091" elapsed="0.000611"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.903250" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:08:53.902912" elapsed="0.000482"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.911194" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:53.910897" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:53.916842" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:53.917361" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:53.917464" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:53.911393" elapsed="0.006096"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.917902" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.917647" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.920946" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.918094" elapsed="0.002926"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:53.923586" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:08:53.921121" elapsed="0.002560"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.921095" elapsed="0.002620"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:53.923910" 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-08-10T02:08:53.924280" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:53.924084" elapsed="0.000294"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:53.924059" elapsed="0.000353"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.924458" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:53.926731" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:53.926792" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:53.910584" elapsed="0.016239"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.929364" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:53.927645" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.927620" elapsed="0.001813"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.929973" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.929578" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.930534" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.930160" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:53.930610" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:53.930787" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:53.927119" elapsed="0.003693"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:53.930969" 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-08-10T02:08:53.910011" 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-08-10T02:08:53.939259" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:53.938967" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:53.948963" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:53.951522" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:53.951920" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:53.939446" elapsed="0.012511"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.952563" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.952183" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.957909" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:53.952825" elapsed="0.006003"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:53.961061" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:53.958928" elapsed="0.002182"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.958902" elapsed="0.002230"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:53.983519" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:53.983567" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:53.961271" elapsed="0.022319"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:53.985501" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:53.983669" elapsed="0.001891"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.983650" elapsed="0.001935"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:53.985619" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:53.985814" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:53.985858" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:53.938590" 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-08-10T02:08:53.988045" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:53.986451" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:53.986434" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.988685" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.988259" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:53.989220" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:53.988873" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:53.989295" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:53.989513" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:53.986096" 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-08-10T02:08:53.989693" 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-08-10T02:08:53.937925" elapsed="0.052227"/>
</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-08-10T02:08:53.891083" elapsed="0.099125"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:53.884166" elapsed="0.106153"/>
</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-08-10T02:08:54.001195" 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-08-10T02:08:54.001326" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:54.001058" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:54.001919" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1490&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:54.001523" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.002388" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:54.002097" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.002832" 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-08-10T02:08:54.002566" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.003270" 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-08-10T02:08:54.003006" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.048618" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:54.003495" elapsed="0.045175"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.049354" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.048912" elapsed="0.000488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.049954" 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-08-10T02:08:54.049631" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.050487" 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-08-10T02:08:54.050145" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.050985" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.050676" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.051522" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.051177" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.052040" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1490&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.051714" 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-08-10T02:08:54.000716" elapsed="0.051429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.052731" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:54.052296" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.053162" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:54.052915" 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-08-10T02:08:54.060935" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.060628" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.066592" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.067197" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:54.067312" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.061093" elapsed="0.006265"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.067801" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.067548" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.070302" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.067987" elapsed="0.002385"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:54.072201" elapsed="0.000037"/>
</return>
<status status="PASS" start="2026-08-10T02:08:54.070448" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.070426" elapsed="0.001878"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:54.072462" 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-08-10T02:08:54.072726" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.072592" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:54.072574" elapsed="0.000226"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.072833" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:54.074562" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:54.074607" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:54.060297" elapsed="0.014333"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.077174" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.075173" elapsed="0.002065"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.075156" elapsed="0.002112"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.078042" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.077491" elapsed="0.000589"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.078808" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.078302" elapsed="0.000542"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.078913" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:08:54.079158" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.074846" elapsed="0.004346"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.079466" elapsed="0.000554"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:54.059713" elapsed="0.020394"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.089004" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.088709" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.097992" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.099851" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:54.100369" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.089159" elapsed="0.011274"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.101385" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.100791" elapsed="0.000699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.108992" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.101806" elapsed="0.007849"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.111511" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.109726" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.109707" elapsed="0.001876"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.132477" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:54.132524" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:54.111720" elapsed="0.020827"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:54.134343" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.132631" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.132612" elapsed="0.001814"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:54.134460" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.134653" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:54.134697" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:54.088316" elapsed="0.046403"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.136936" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.135257" elapsed="0.001725"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.135240" elapsed="0.001763"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.137566" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.137148" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.138103" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.137752" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.138178" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.138374" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.134931" elapsed="0.003470"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.138556" 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-08-10T02:08:54.087707" elapsed="0.051295"/>
</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-08-10T02:08:53.997437" elapsed="0.141620"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:53.990575" elapsed="0.148610"/>
</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-08-10T02:08:54.150289" 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-08-10T02:08:54.150461" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:54.150147" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:54.151054" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec12b420&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:54.150642" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.151559" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:54.151232" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.152006" 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-08-10T02:08:54.151736" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.152469" 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-08-10T02:08:54.152182" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.153294" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:54.152643" elapsed="0.000681"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.153824" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.153496" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.154395" 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-08-10T02:08:54.154053" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.154914" 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-08-10T02:08:54.154588" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.155448" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.155104" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.155959" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.155645" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.156487" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec12b420&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.156153" 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-08-10T02:08:54.149805" elapsed="0.006779"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.157111" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:54.156732" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.157554" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:54.157295" 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-08-10T02:08:54.165257" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.164960" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.170590" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.171081" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:54.171182" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.165430" elapsed="0.005777"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.171655" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.171385" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.174299" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.171841" elapsed="0.002527"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:54.176410" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:54.174438" elapsed="0.002065"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.174419" elapsed="0.002118"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:54.176781" 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-08-10T02:08:54.177095" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.176909" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:54.176887" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.177242" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:54.179521" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:54.179583" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:54.164647" elapsed="0.014967"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.182582" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.180389" elapsed="0.002256"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.180363" elapsed="0.002312"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.183483" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.182875" elapsed="0.000647"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.184161" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.183749" elapsed="0.000438"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.184236" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:54.184431" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.179909" elapsed="0.004548"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.184611" 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-08-10T02:08:54.164074" elapsed="0.020987"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.192814" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.192521" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.202863" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.206951" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:54.207659" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.192967" elapsed="0.014753"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.208684" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.208079" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.214561" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.209100" elapsed="0.006115"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.217069" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.215292" elapsed="0.001828"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.215271" elapsed="0.001871"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.239957" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:54.240003" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:54.217291" elapsed="0.022735"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:54.241815" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.240103" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.240085" elapsed="0.001810"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:54.241928" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:54.242125" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:54.242169" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:54.192126" 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-08-10T02:08:54.244384" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.242776" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.242759" elapsed="0.001693"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.245013" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.244598" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.245567" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.245200" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.245642" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.245818" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.242439" elapsed="0.003404"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.245996" 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-08-10T02:08:54.191514" elapsed="0.054951"/>
</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-08-10T02:08:54.146422" elapsed="0.100099"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:54.139532" elapsed="0.107110"/>
</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-08-10T02:08:54.257633" 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-08-10T02:08:54.257778" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:54.257492" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:54.258389" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ace00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:54.257961" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.258846" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:54.258568" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.259290" 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-08-10T02:08:54.259023" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.265295" 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-08-10T02:08:54.265014" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.266158" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:54.265489" elapsed="0.000699"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.266701" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.266359" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.267267" 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-08-10T02:08:54.266945" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.267837" 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-08-10T02:08:54.267509" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.268352" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.268027" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.268860" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.268546" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.269389" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ace00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.269051" 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-08-10T02:08:54.257139" elapsed="0.012347"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.270018" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:54.269634" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.270457" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:54.270197" 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-08-10T02:08:54.278138" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.277835" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.284290" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.285022" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:54.285164" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.278294" elapsed="0.006906"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.285795" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.285444" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.289556" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.286054" elapsed="0.003574"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:54.292200" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:54.289722" elapsed="0.002545"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.289697" elapsed="0.002595"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:54.292482" 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-08-10T02:08:54.292706" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.292574" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:54.292557" elapsed="0.000223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.292812" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:54.294434" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:54.294478" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:54.277522" elapsed="0.016979"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.296635" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.295045" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.295028" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.297238" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.296846" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.297792" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.297440" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.297866" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.298040" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.294713" elapsed="0.003353"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.298219" 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-08-10T02:08:54.276953" elapsed="0.021730"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.306539" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.306226" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.315080" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.318145" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:54.318811" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.306693" elapsed="0.012179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.319887" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.319229" elapsed="0.000759"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.326083" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.320303" elapsed="0.006439"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.328566" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.326812" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.326794" elapsed="0.001843"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.349206" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:54.349253" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:54.328780" elapsed="0.020496"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:54.351073" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.349372" elapsed="0.001756"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.349352" elapsed="0.001800"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:54.351186" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:54.351397" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:54.351441" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:54.305853" elapsed="0.045611"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.353616" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.352031" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.352013" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.354223" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.353827" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.354776" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.354426" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.354855" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.355032" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.351695" elapsed="0.003362"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.355211" 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-08-10T02:08:54.305229" elapsed="0.050480"/>
</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-08-10T02:08:54.253775" elapsed="0.101989"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:54.246932" elapsed="0.108948"/>
</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-08-10T02:08:54.366874" 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-08-10T02:08:54.367030" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:54.366735" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:54.367666" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2e840&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:54.367209" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.368121" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:54.367846" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.368582" 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-08-10T02:08:54.368297" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.370977" 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-08-10T02:08:54.368754" elapsed="0.002250"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.371905" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:54.371157" elapsed="0.000779"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.372442" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.372090" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.372992" 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-08-10T02:08:54.372675" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.373519" 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-08-10T02:08:54.373182" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.374013" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.373707" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.374533" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.374203" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.375043" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2e840&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.374724" 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-08-10T02:08:54.366407" elapsed="0.008731"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.375709" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:54.375282" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.376123" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:54.375885" 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-08-10T02:08:54.383925" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.383601" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.389571" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.390246" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:54.390425" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.384090" elapsed="0.006372"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.391029" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.390682" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.394601" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.391289" 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-08-10T02:08:54.397255" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:54.394768" elapsed="0.002642"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.394742" 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-08-10T02:08:54.397647" 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-08-10T02:08:54.397967" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.397772" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:54.397749" elapsed="0.000325"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.398119" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:54.400485" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:54.400548" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:54.383233" elapsed="0.017347"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.403598" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.401355" elapsed="0.002310"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.401309" elapsed="0.002386"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.404330" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.403921" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.404882" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.404534" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.404956" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.405132" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.400875" elapsed="0.004282"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.405416" 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-08-10T02:08:54.382645" elapsed="0.023223"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.413802" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.413506" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.422919" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.425488" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:54.425926" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.413955" elapsed="0.012009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.426606" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.426203" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.431987" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.426869" elapsed="0.006035"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.435536" elapsed="0.000057"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.433007" elapsed="0.002636"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.432980" elapsed="0.002694"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.455787" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:54.455834" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:54.435879" elapsed="0.019978"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:54.457639" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.455936" elapsed="0.001758"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.455917" elapsed="0.001801"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:54.457752" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:54.457950" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:54.457994" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:54.413115" elapsed="0.044902"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.460213" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.458598" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.458579" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.460854" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.460447" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.461408" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.461041" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.461483" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:54.461661" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.458246" 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-08-10T02:08:54.461841" 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-08-10T02:08:54.412506" elapsed="0.049787"/>
</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-08-10T02:08:54.363159" elapsed="0.099208"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:54.356268" elapsed="0.106221"/>
</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-08-10T02:08:54.473378" 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-08-10T02:08:54.473527" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:54.473218" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:54.474140" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2db20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:54.473707" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.474619" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:54.474321" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.475061" 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-08-10T02:08:54.474795" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.475520" 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-08-10T02:08:54.475236" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.476508" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:54.475736" elapsed="0.000803"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.477172" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.476693" elapsed="0.000522"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.477747" 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-08-10T02:08:54.477426" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.478259" 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-08-10T02:08:54.477940" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.478775" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.478466" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.479280" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.478967" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.479844" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2db20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.479496" 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-08-10T02:08:54.472886" elapsed="0.007054"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.480493" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:54.480086" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.480909" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:54.480670" 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-08-10T02:08:54.488568" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.488245" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.495888" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.496406" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:54.496509" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.488723" elapsed="0.007810"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.497063" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.496690" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.500595" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.497320" elapsed="0.003346"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:54.503237" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:54.500803" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.500776" 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-08-10T02:08:54.503598" 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-08-10T02:08:54.503907" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.503724" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:54.503701" elapsed="0.000308"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.504055" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:54.506303" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:54.506389" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:54.487934" elapsed="0.018488"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.509089" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.507165" elapsed="0.001970"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.507141" elapsed="0.002015"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.509710" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.509300" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.510240" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.509896" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.510315" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:08:54.510509" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.506713" elapsed="0.003820"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.510797" 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-08-10T02:08:54.487359" elapsed="0.023888"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.519017" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.518724" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.529188" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.531723" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:54.532115" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.519171" elapsed="0.012981"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.533026" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.532400" elapsed="0.000693"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.538400" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.533294" elapsed="0.006002"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.541420" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.539417" elapsed="0.002053"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.539390" elapsed="0.002102"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.563647" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:54.563696" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:54.541630" elapsed="0.022090"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:54.565505" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.563798" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.563779" elapsed="0.001806"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:54.565619" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.565812" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:54.565856" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:54.518348" elapsed="0.047530"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.568029" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.566449" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.566431" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.568665" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.568244" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.569202" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.568853" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.569278" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.569491" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.566098" 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-08-10T02:08:54.569684" 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-08-10T02:08:54.517726" elapsed="0.052406"/>
</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-08-10T02:08:54.469627" elapsed="0.100561"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:54.462775" elapsed="0.107529"/>
</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-08-10T02:08:54.580951" 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-08-10T02:08:54.581091" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:54.580814" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:54.581704" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2f060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:54.581268" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.582155" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:54.581881" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.582615" 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-08-10T02:08:54.582346" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.583053" 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-08-10T02:08:54.582788" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.583988" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:54.583233" elapsed="0.000786"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.584520" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.584173" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.585072" 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-08-10T02:08:54.584753" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.585605" 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-08-10T02:08:54.585263" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.586106" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.585797" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.586632" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.586299" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.587137" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2f060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.586824" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:54.580489" elapsed="0.006743"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.587831" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:54.587395" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.588252" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:54.588012" 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-08-10T02:08:54.596116" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.595818" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.601635" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.602139" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:54.602240" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.596271" elapsed="0.005995"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.602696" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.602443" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.605503" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.602882" 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-08-10T02:08:54.608181" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:54.605714" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.605686" elapsed="0.002620"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:54.608524" 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-08-10T02:08:54.608835" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.608651" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:54.608629" elapsed="0.000307"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.608980" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:54.611230" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:54.611292" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:54.595475" elapsed="0.015849"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.613957" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.612136" elapsed="0.001867"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.612112" elapsed="0.001912"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.614579" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.614167" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.615109" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.614765" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.615184" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:54.615375" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.611678" elapsed="0.003723"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.615554" 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-08-10T02:08:54.594904" elapsed="0.021125"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.623865" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.623555" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.635436" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.637995" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:54.638437" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.624018" elapsed="0.014457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.639095" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.638719" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.644762" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.639380" elapsed="0.006296"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.648287" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.645780" elapsed="0.002600"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.645752" elapsed="0.002661"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.669096" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:54.669144" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:54.648610" elapsed="0.020557"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:54.670973" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.669246" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.669227" elapsed="0.001826"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:54.671087" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:54.671285" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:54.671346" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:54.623165" elapsed="0.048206"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.673584" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.671980" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.671962" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.674205" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.673801" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.674763" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.674411" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.674838" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.675015" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.671605" elapsed="0.003435"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.675195" 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-08-10T02:08:54.622556" elapsed="0.053155"/>
</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-08-10T02:08:54.577263" elapsed="0.098505"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:54.570497" elapsed="0.105393"/>
</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-08-10T02:08:54.686672" 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-08-10T02:08:54.686817" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:54.686532" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:54.687436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9eed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:54.686997" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.687926" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:54.687615" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.688387" 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-08-10T02:08:54.688103" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.688829" 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-08-10T02:08:54.688563" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.689763" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:54.689003" elapsed="0.000790"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.690276" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.689947" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.690847" 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-08-10T02:08:54.690525" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.691381" 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-08-10T02:08:54.691040" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.691904" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.691573" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.692430" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.692098" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.692941" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9eed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.692625" 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-08-10T02:08:54.686186" elapsed="0.006851"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.693579" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:54.693183" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.693998" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:54.693759" 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-08-10T02:08:54.703611" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.703289" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.709531" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.710018" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:54.710128" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.703797" elapsed="0.006357"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.710585" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.710312" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.713364" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.710776" 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-08-10T02:08:54.716019" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:54.713579" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.713551" elapsed="0.002593"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:54.716362" 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-08-10T02:08:54.716673" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.716489" elapsed="0.000255"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:54.716467" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.716824" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:54.719065" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:54.719127" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:54.702974" elapsed="0.016185"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.721945" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.719978" elapsed="0.002013"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.719953" elapsed="0.002060"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.722573" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.722159" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.723104" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.722759" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.723178" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.723372" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.719479" elapsed="0.003920"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.723553" 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-08-10T02:08:54.702417" elapsed="0.021598"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.731850" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.731542" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.742204" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.744809" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:54.745473" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.732005" elapsed="0.013529"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.746488" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.745890" elapsed="0.000700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.754044" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.746907" elapsed="0.007800"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.756569" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.754784" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.754762" elapsed="0.001882"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.776388" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:54.776436" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:54.756783" elapsed="0.019676"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:54.778235" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.776538" elapsed="0.001752"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.776519" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:54.778364" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.778558" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:54.778601" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:54.731151" elapsed="0.047472"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.780773" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.779164" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.779146" elapsed="0.001694"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.781404" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.780986" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.781940" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.781593" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.782015" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.782193" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.778837" 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-08-10T02:08:54.782406" 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-08-10T02:08:54.730535" elapsed="0.052330"/>
</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-08-10T02:08:54.682931" elapsed="0.099990"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:54.676078" elapsed="0.106956"/>
</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-08-10T02:08:54.793782" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-08-10T02:08:54.793916" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:54.793646" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:54.794530" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036f20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:54.794094" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.794983" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:54.794708" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.795443" 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-08-10T02:08:54.795158" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.795919" 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-08-10T02:08:54.795617" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.796844" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:54.796095" elapsed="0.000780"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.797380" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.797031" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.797939" 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-08-10T02:08:54.797617" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.798472" 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-08-10T02:08:54.798132" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.798973" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.798665" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.799500" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.799167" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.800032" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec036f20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.799695" 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-08-10T02:08:54.793298" elapsed="0.006830"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.800678" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:54.800278" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.801093" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:54.800855" 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-08-10T02:08:54.809038" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.808742" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.814425" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.815009" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:54.815154" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.809193" elapsed="0.005996"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.815811" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.815436" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.819368" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.816073" elapsed="0.003368"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:54.822026" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:54.819577" elapsed="0.002541"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.819510" elapsed="0.002641"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:54.822370" 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-08-10T02:08:54.822683" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.822497" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:54.822474" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.822829" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:54.825112" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:54.825157" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:54.808431" elapsed="0.016749"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.827461" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.825742" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.825724" elapsed="0.001804"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.828089" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.827674" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.828646" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.828275" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.828720" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.828896" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.825412" 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-08-10T02:08:54.829074" 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-08-10T02:08:54.807853" elapsed="0.021685"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.837538" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.837194" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.848295" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.851875" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:54.852553" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.837693" elapsed="0.014920"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.853573" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.852969" elapsed="0.000707"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.859477" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.853993" elapsed="0.006175"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.862023" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.860243" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.860223" elapsed="0.001874"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.883688" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:54.883735" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:54.862235" elapsed="0.021523"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:54.885639" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.883850" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.883831" elapsed="0.001888"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:54.885753" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:08:54.885950" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:54.885994" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:54.836813" elapsed="0.049203"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.888186" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.886584" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.886565" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.888851" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.888433" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.889409" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.889039" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.889485" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.889664" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.886233" elapsed="0.003456"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.889844" 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-08-10T02:08:54.836146" elapsed="0.054154"/>
</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-08-10T02:08:54.790011" elapsed="0.100365"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:54.783208" elapsed="0.107288"/>
</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-08-10T02:08:54.901259" 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-08-10T02:08:54.901423" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:54.901113" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:54.902026" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ebb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:54.901601" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.902505" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:54.902204" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.902950" 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-08-10T02:08:54.902682" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:54.903413" 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-08-10T02:08:54.903124" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.904361" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:54.903589" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.904880" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.904549" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.905452" 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-08-10T02:08:54.905113" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.905969" 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-08-10T02:08:54.905645" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.906494" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.906161" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.907008" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.906689" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.907541" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9ebb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:54.907203" 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-08-10T02:08:54.900784" elapsed="0.006854"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.908209" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:54.907785" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.908652" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:54.908409" 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-08-10T02:08:54.916598" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.916281" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.922462" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.923148" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:54.923289" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.916754" elapsed="0.006570"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.923989" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.923574" elapsed="0.000479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.927539" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.924251" elapsed="0.003361"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:54.930246" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:08:54.927771" elapsed="0.002591"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.927742" elapsed="0.002657"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:54.930601" 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-08-10T02:08:54.930912" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.930727" elapsed="0.000255"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:54.930704" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.931059" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:54.933431" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:54.933496" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:54.915967" elapsed="0.017561"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.936577" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.934310" elapsed="0.002331"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.934285" elapsed="0.002387"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.937319" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.936903" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.937872" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.937525" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.937946" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.938123" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.933841" elapsed="0.004307"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.938304" 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-08-10T02:08:54.915392" elapsed="0.023388"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.946577" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:54.946253" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:54.957752" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:54.960532" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:54.960989" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:54.946734" elapsed="0.014294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.961705" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.961284" elapsed="0.000489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.967750" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:54.961982" elapsed="0.006783"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.970613" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.968848" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.968824" elapsed="0.001865"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:54.990887" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:54.990934" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:54.970830" elapsed="0.020127"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:54.992801" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:54.991036" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.991017" elapsed="0.001863"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:54.992915" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:08:54.993118" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:54.993162" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:54.945876" elapsed="0.047309"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:54.995363" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:54.993781" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:54.993763" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.996017" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.995581" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:54.996571" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:54.996204" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:54.996646" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:54.996822" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:54.993438" elapsed="0.003409"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:54.997000" 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-08-10T02:08:54.945240" elapsed="0.052232"/>
</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-08-10T02:08:54.897526" elapsed="0.100003"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:54.890682" elapsed="0.106977"/>
</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-08-10T02:08:55.008479" 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-08-10T02:08:55.008640" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:55.008319" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.009234" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531c60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.008820" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.009711" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.009431" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.010152" 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-08-10T02:08:55.009887" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.010610" 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-08-10T02:08:55.010326" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.011475" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:55.010786" elapsed="0.000720"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.012021" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.011663" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.012602" 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-08-10T02:08:55.012252" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.013117" 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-08-10T02:08:55.012794" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.013635" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.013307" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.014143" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.013829" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.014671" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531c60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.014352" 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-08-10T02:08:55.007989" elapsed="0.006778"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.015295" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:55.014916" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.015732" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:55.015493" 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-08-10T02:08:55.025469" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.025148" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.030902" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.031411" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:55.031523" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.025624" elapsed="0.005925"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.031995" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.031707" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.035249" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.032180" elapsed="0.003141"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:55.037932" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:08:55.035440" elapsed="0.002586"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.035414" elapsed="0.002701"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:55.038318" elapsed="0.000054"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.038655" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.038470" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:55.038447" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.038803" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:55.041087" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:55.041132" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:55.024837" elapsed="0.016318"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.043291" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.041710" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.041693" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.044206" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.043594" elapsed="0.000641"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.044779" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.044426" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.044859" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:08:55.045040" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.041383" 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-08-10T02:08:55.045219" 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-08-10T02:08:55.024266" elapsed="0.021435"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.053587" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.053258" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.064262" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.068411" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:55.069055" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.053744" elapsed="0.015370"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.070068" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.069501" elapsed="0.000669"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.075642" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.070520" elapsed="0.005791"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.078134" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.076400" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.076380" elapsed="0.001825"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.097950" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:55.097996" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:55.078358" elapsed="0.019661"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.099804" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.098097" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.098078" elapsed="0.001805"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:55.099931" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:55.100123" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:55.100166" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:55.052887" elapsed="0.047302"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.102321" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.100751" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.100733" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.102946" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.102550" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.103499" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.103132" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.103574" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.103750" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.100422" elapsed="0.003353"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.103957" 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-08-10T02:08:55.052237" elapsed="0.052201"/>
</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-08-10T02:08:55.004721" elapsed="0.099773"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:54.997868" elapsed="0.106759"/>
</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-08-10T02:08:55.115468" 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-08-10T02:08:55.115614" 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-08-10T02:08:55.115294" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.116219" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89490&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.115793" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.116693" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.116414" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.117135" 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-08-10T02:08:55.116869" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.117594" 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-08-10T02:08:55.117308" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.118448" 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-08-10T02:08:55.117768" elapsed="0.000711"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.118967" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.118632" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.119542" 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-08-10T02:08:55.119198" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.120086" 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-08-10T02:08:55.119734" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.120607" 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-08-10T02:08:55.120277" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.121116" 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-08-10T02:08:55.120801" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.121646" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb89490&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.121310" 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-08-10T02:08:55.114967" elapsed="0.006776"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.122266" 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-08-10T02:08:55.121889" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.122707" 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-08-10T02:08:55.122465" 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-08-10T02:08:55.130626" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.130310" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.136394" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.136989" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:55.137134" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.130781" elapsed="0.006388"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.137773" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.137419" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.141390" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.138033" elapsed="0.003429"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:55.144003" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:55.141557" elapsed="0.002538"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.141532" elapsed="0.002650"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:55.144410" 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-08-10T02:08:55.144725" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.144539" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:55.144516" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.144872" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:55.147152" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:55.147215" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:55.129999" elapsed="0.017248"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.150025" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.148068" elapsed="0.002003"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.148043" elapsed="0.002050"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.150663" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.150238" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.151196" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.150850" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.151271" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.151473" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.147566" elapsed="0.003932"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.151654" 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-08-10T02:08:55.129444" elapsed="0.022680"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.159886" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.159592" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.170464" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.172688" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:55.173080" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.160058" elapsed="0.013059"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.173717" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.173363" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.179299" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.173980" elapsed="0.006289"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.182330" elapsed="0.000032"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.180392" elapsed="0.002005"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.180364" elapsed="0.002058"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.203012" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:55.203060" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:55.182565" elapsed="0.020518"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.205011" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.203163" elapsed="0.001905"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.203143" elapsed="0.001949"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:55.205127" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:55.205321" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:55.205384" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:55.159200" elapsed="0.046207"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.207553" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.205956" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.205938" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.208183" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.207766" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.208741" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.208388" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.208817" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.208994" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.205625" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.209174" 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-08-10T02:08:55.158586" elapsed="0.051051"/>
</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-08-10T02:08:55.111698" elapsed="0.097995"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:55.104816" elapsed="0.104987"/>
</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-08-10T02:08:55.220735" 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-08-10T02:08:55.220869" 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-08-10T02:08:55.220600" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.221471" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531c10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.221050" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.221923" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.221650" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.222385" 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-08-10T02:08:55.222098" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.222830" 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-08-10T02:08:55.222561" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.223670" 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-08-10T02:08:55.223005" elapsed="0.000696"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.224213" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.223854" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.224789" 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-08-10T02:08:55.224467" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.225309" 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-08-10T02:08:55.224983" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.225835" 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-08-10T02:08:55.225523" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.226362" 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-08-10T02:08:55.226028" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.226880" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee531c10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.226560" 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-08-10T02:08:55.220250" elapsed="0.006727"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.227524" 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-08-10T02:08:55.227124" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.227948" 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-08-10T02:08:55.227706" 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-08-10T02:08:55.235861" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.235564" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.241871" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.242405" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:55.242508" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.236058" elapsed="0.006476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.242948" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.242696" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.245642" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.243135" elapsed="0.002580"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:55.248262" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:55.245809" elapsed="0.002568"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.245784" elapsed="0.002628"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:55.248651" 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-08-10T02:08:55.248963" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.248778" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:55.248755" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.249109" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:55.251392" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:55.251455" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:55.235232" elapsed="0.016255"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.254260" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.252380" elapsed="0.001927"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.252328" elapsed="0.002002"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.254982" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.254499" elapsed="0.000510"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.255540" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.255169" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.255615" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:55.255798" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.251785" elapsed="0.004037"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.255997" 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-08-10T02:08:55.234677" elapsed="0.021800"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.264272" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.263945" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.273659" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.276212" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:55.276641" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.264446" elapsed="0.012232"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.277260" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.276907" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.282877" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.277546" 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-08-10T02:08:55.285988" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.283895" elapsed="0.002142"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.283867" elapsed="0.002192"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.305396" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:55.305445" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:55.286199" elapsed="0.019269"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.307352" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.305547" elapsed="0.001862"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.305528" elapsed="0.001905"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:55.307467" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.307663" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:55.307706" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:55.263570" elapsed="0.044159"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.312993" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.311359" elapsed="0.001680"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.311326" elapsed="0.001736"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.313660" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.313220" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.314198" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.313848" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.314273" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.314495" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.307944" elapsed="0.006577"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.314676" 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-08-10T02:08:55.262937" elapsed="0.052184"/>
</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-08-10T02:08:55.216964" elapsed="0.098214"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:55.210058" elapsed="0.105242"/>
</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-08-10T02:08:55.326243" 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-08-10T02:08:55.326414" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.326102" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.326989" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1300&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.326596" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.327465" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.327169" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.327907" 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-08-10T02:08:55.327640" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.328382" 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-08-10T02:08:55.328097" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.329132" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.328558" elapsed="0.000605"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.329668" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.329317" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.330221" 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-08-10T02:08:55.329898" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.330761" 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-08-10T02:08:55.330430" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.331262" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.330952" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.331788" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.331473" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.332365" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff1300&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.331979" 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-08-10T02:08:55.325766" elapsed="0.006697"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.332989" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:55.332610" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.333425" level="INFO">&lt;?xml version="1.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-08-10T02:08:55.333168" 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-08-10T02:08:55.342997" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.342699" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.348223" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.348745" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:55.348921" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.343151" elapsed="0.005814"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.349582" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.349194" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.353115" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.349842" elapsed="0.003345"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:55.355737" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:55.353283" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.353257" elapsed="0.002605"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:55.356078" 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-08-10T02:08:55.356474" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.356262" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:55.356237" elapsed="0.000341"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.356623" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:55.358875" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:55.358936" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:55.342386" elapsed="0.016582"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.361803" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.359740" elapsed="0.002108"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.359716" elapsed="0.002154"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.362433" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.362016" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.362968" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.362620" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.363044" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.363220" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.359262" elapsed="0.003982"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.363415" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:55.341820" elapsed="0.022043"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.371619" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.371305" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.380493" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.383006" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:55.383444" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.371773" elapsed="0.011711"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.384124" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.383709" elapsed="0.000482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.389854" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.384435" elapsed="0.006362"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.393322" elapsed="0.000032"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.390902" elapsed="0.002488"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.390874" elapsed="0.002540"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.412659" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:55.412707" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:55.393564" elapsed="0.019169"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.414623" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.412821" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.412798" elapsed="0.001907"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:55.414740" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.414945" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:55.414990" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:55.370935" elapsed="0.044078"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.417227" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.415594" elapsed="0.001680"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.415575" elapsed="0.001721"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.417887" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.417469" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.418472" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.418081" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.418549" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:55.418728" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.415240" elapsed="0.003514"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.418918" 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-08-10T02:08:55.370315" elapsed="0.049087"/>
</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-08-10T02:08:55.322502" elapsed="0.096956"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:55.315654" elapsed="0.103918"/>
</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-08-10T02:08:55.430375" 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-08-10T02:08:55.430511" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.430221" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.431078" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee570&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.430691" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.431550" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.431255" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.431993" 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-08-10T02:08:55.431726" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.432469" 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-08-10T02:08:55.432181" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.433184" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.432642" elapsed="0.000573"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.433710" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.433385" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.434265" 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-08-10T02:08:55.433946" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.434798" 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-08-10T02:08:55.434473" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.435299" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.434987" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.435826" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.435511" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.436465" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee570&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.436016" elapsed="0.000495"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:55.429893" elapsed="0.006675"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.437107" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:55.436719" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.437551" level="INFO">&lt;?xml version="1.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-08-10T02:08:55.437288" 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-08-10T02:08:55.445378" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.445060" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.450021" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.450533" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:55.450636" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.445534" elapsed="0.005128"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.451071" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.450820" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.453644" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.451256" 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-08-10T02:08:55.455514" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:55.453764" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.453745" elapsed="0.001860"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:55.455745" 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-08-10T02:08:55.455969" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.455835" elapsed="0.000217"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:55.455818" elapsed="0.000284"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.456137" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:08:55.458214" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:55.458276" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:55.444748" elapsed="0.013560"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.461438" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.459082" elapsed="0.002426"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.459057" elapsed="0.002485"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.462410" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.461779" elapsed="0.000671"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.463202" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.462678" elapsed="0.000561"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.463309" elapsed="0.000065"/>
</return>
<msg time="2026-08-10T02:08:55.463590" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.458626" elapsed="0.005001"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.463859" elapsed="0.000633"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:55.444177" elapsed="0.020407"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.472713" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.472403" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.481447" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.485209" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:55.485886" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.472871" elapsed="0.013075"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.486907" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.486302" elapsed="0.000706"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.494817" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.487323" elapsed="0.008421"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.498317" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.495852" elapsed="0.002556"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.495824" elapsed="0.002614"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.519542" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:55.519589" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:55.498635" elapsed="0.020977"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.521454" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.519690" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.519672" elapsed="0.001863"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:55.521569" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.521763" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:55.521807" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:55.471969" elapsed="0.049860"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.524090" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.522411" elapsed="0.001751"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.522391" elapsed="0.001793"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.524752" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.524348" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.525291" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.524940" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.525385" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.525563" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.522045" 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-08-10T02:08:55.525743" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:55.471311" elapsed="0.054877"/>
</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-08-10T02:08:55.426653" elapsed="0.099591"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:55.419821" elapsed="0.106558"/>
</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-08-10T02:08:55.537273" 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-08-10T02:08:55.537442" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.537131" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.538015" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.537623" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.538496" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.538196" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.538941" 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-08-10T02:08:55.538674" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.539400" 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-08-10T02:08:55.539115" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.540161" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.539574" elapsed="0.000619"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.540696" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.540364" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.541247" 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-08-10T02:08:55.540926" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.541782" 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-08-10T02:08:55.541457" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.542289" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.541972" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.542818" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.542502" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.543347" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff0130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.543012" 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-08-10T02:08:55.536801" elapsed="0.006645"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.543973" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:55.543593" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.544426" level="INFO">&lt;?xml version="1.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-08-10T02:08:55.544166" 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-08-10T02:08:55.552097" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.551802" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.557427" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.558012" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:55.558160" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.552290" elapsed="0.005905"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.558799" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.558445" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.562356" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.559059" elapsed="0.003372"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:55.565009" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:55.562526" elapsed="0.002576"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.562500" elapsed="0.002635"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:55.565354" 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-08-10T02:08:55.565673" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.565484" elapsed="0.000303"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:55.565460" elapsed="0.000363"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.565869" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:08:55.568204" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:55.568278" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:55.551490" elapsed="0.016822"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.570683" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.569092" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.569074" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.571291" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.570896" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.571852" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.571497" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.571926" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.572102" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.568649" 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-08-10T02:08:55.572411" 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-08-10T02:08:55.550921" elapsed="0.021941"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.580588" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.580273" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.589188" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.591681" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:55.592074" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.580742" elapsed="0.011369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.592753" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.592398" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.598098" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.593014" elapsed="0.005998"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.601462" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.599109" elapsed="0.002403"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.599083" elapsed="0.002451"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.619994" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:55.620041" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:55.601672" elapsed="0.018393"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.621885" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.620142" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.620123" elapsed="0.001842"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:55.621999" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.622193" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:55.622237" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:55.579884" elapsed="0.042375"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.624436" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.622824" elapsed="0.001657"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.622806" elapsed="0.001697"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.625041" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.624648" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.625595" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.625228" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.625669" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.625845" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.622492" elapsed="0.003378"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.626025" 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-08-10T02:08:55.579259" elapsed="0.047229"/>
</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-08-10T02:08:55.533514" elapsed="0.093029"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:55.526656" elapsed="0.099995"/>
</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-08-10T02:08:55.637549" 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-08-10T02:08:55.637680" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.637413" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.638268" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397420&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.637862" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.638741" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.638464" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.639200" 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-08-10T02:08:55.638917" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.639796" 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-08-10T02:08:55.639393" elapsed="0.000429"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.640709" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.639973" elapsed="0.000767"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.641233" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.640896" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.641803" 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-08-10T02:08:55.641482" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.642325" 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-08-10T02:08:55.641998" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.642844" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.642535" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.643371" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.643039" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.643882" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec397420&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.643567" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:55.637071" elapsed="0.006907"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.644545" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:55.644125" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.644963" level="INFO">&lt;?xml version="1.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-08-10T02:08:55.644725" 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-08-10T02:08:55.652733" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.652432" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.658417" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.659002" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:55.659149" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.652889" elapsed="0.006295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.659797" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.659437" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.663371" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.660067" 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-08-10T02:08:55.665995" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:55.663539" elapsed="0.002591"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.663513" 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-08-10T02:08:55.666388" 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-08-10T02:08:55.666699" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.666515" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:55.666492" elapsed="0.000308"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.666845" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:55.669147" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:55.669195" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:55.652073" elapsed="0.017146"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.673575" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.669807" elapsed="0.003816"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.669789" elapsed="0.003856"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.674220" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.673804" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.674782" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.674429" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.674858" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:55.675036" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.669468" elapsed="0.005594"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.675219" 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-08-10T02:08:55.651524" elapsed="0.024173"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.683548" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.683230" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.690516" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.692399" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:55.692713" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.683702" elapsed="0.009039"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.693373" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.692992" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.698715" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.693633" elapsed="0.006002"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.701884" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.699733" elapsed="0.002201"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.699708" elapsed="0.002248"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.720937" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:55.720983" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:55.702093" elapsed="0.018913"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.722795" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.721083" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.721065" elapsed="0.001809"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:55.722907" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.723099" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:55.723142" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:55.682856" elapsed="0.040308"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.725303" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.723722" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.723704" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.725941" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.725535" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.726496" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.726130" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.726572" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:55.726747" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.723394" elapsed="0.003378"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.726926" 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-08-10T02:08:55.682230" elapsed="0.045160"/>
</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-08-10T02:08:55.633808" elapsed="0.093638"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:55.626890" elapsed="0.100677"/>
</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-08-10T02:08:55.738428" 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-08-10T02:08:55.738573" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.738269" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.739169" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035ad0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.738752" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.739649" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.739365" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.740089" 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-08-10T02:08:55.739824" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.740558" 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-08-10T02:08:55.740274" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.741570" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.740733" elapsed="0.000868"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.742091" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.741759" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.742671" 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-08-10T02:08:55.742345" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.743192" 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-08-10T02:08:55.742865" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.743711" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.743400" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.744260" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.743906" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.744804" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035ad0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.744484" 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-08-10T02:08:55.737941" elapsed="0.006960"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.745447" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:55.745048" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.745864" level="INFO">&lt;?xml version="1.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-08-10T02:08:55.745625" 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-08-10T02:08:55.753587" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.753270" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.759043" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.759563" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:55.759665" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.753741" elapsed="0.005950"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.760096" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.759846" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.763558" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.760380" elapsed="0.003250"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:55.766183" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:55.763727" elapsed="0.002590"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.763701" elapsed="0.002676"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:55.766578" 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-08-10T02:08:55.766890" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.766704" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:55.766682" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.767038" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:55.769302" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:55.769387" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:55.752958" elapsed="0.016463"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.772439" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.770174" elapsed="0.002329"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.770149" elapsed="0.002384"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.773217" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.772735" elapsed="0.000508"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.773771" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.773423" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.773847" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.774023" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.769715" elapsed="0.004332"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.774201" 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-08-10T02:08:55.752402" elapsed="0.022261"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.782434" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.782122" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.792968" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.795736" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:55.796150" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.782588" elapsed="0.013600"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.796834" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.796474" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.802196" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.797099" elapsed="0.006025"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.805545" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.803223" elapsed="0.002371"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.803197" elapsed="0.002418"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.866015" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:55.866078" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:55.805754" elapsed="0.060348"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.868326" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.866224" elapsed="0.002182"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.866194" elapsed="0.002239"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:55.868472" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:08:55.868691" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:55.868736" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:55.781751" elapsed="0.087008"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.870988" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.869408" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.869389" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.871688" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.871208" elapsed="0.000507"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.872222" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.871876" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.872323" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:08:55.872531" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.869019" elapsed="0.003537"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.872713" 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-08-10T02:08:55.781124" elapsed="0.092058"/>
</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-08-10T02:08:55.734690" elapsed="0.138550"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:55.727839" elapsed="0.145544"/>
</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-08-10T02:08:55.884433" 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-08-10T02:08:55.884615" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.884257" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.885257" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec343560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.884798" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.885744" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.885461" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.886192" 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-08-10T02:08:55.885922" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.886657" 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-08-10T02:08:55.886385" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.887600" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.886833" elapsed="0.000799"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.888125" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.887789" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.888765" 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-08-10T02:08:55.888432" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.889472" 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-08-10T02:08:55.888960" elapsed="0.000556"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.889984" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.889669" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.890521" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.890180" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.891038" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec343560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.890717" 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-08-10T02:08:55.883924" elapsed="0.007211"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.891690" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:55.891283" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.892115" level="INFO">&lt;?xml version="1.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-08-10T02:08:55.891871" 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-08-10T02:08:55.899957" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.899653" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.906023" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.906840" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:55.906983" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.900111" elapsed="0.006909"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.907626" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.907241" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.911166" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.907890" elapsed="0.003373"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:55.913947" elapsed="0.000106"/>
</return>
<status status="PASS" start="2026-08-10T02:08:55.911387" elapsed="0.002723"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.911357" elapsed="0.002788"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:55.914366" 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-08-10T02:08:55.914685" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.914497" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:55.914473" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.914838" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:55.917119" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:55.917164" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:55.899318" elapsed="0.017869"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.919347" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.917752" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.917735" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.919957" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.919561" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.920521" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.920144" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.920596" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:08:55.920777" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.917420" elapsed="0.003382"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.920961" 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-08-10T02:08:55.898756" elapsed="0.022676"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.929179" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:55.928884" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:55.937088" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:55.939837" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:55.940240" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:55.929348" elapsed="0.010930"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.940918" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.940564" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.946293" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;11&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;13&lt;/second&gt;&lt;nanosecond&gt;925000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;419000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;12&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;427000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;16&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;17&lt;/second&gt;&lt;nanosecond&gt;426000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;18&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&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;19&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;930000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;938000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&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;20&lt;/second&gt;&lt;nanosecond&gt;436000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&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;5&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&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;22&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;437000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&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;24&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;898000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&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;23&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&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;23&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&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;4&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&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;4&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-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;400000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;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-20&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;25&lt;/second&gt;&lt;nanosecond&gt;947000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;10&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;26&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;406000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&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;7&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-55&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;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;409000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&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;10&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;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;8&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&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;9&lt;/second&gt;&lt;nanosecond&gt;414000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:55.941176" 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-08-10T02:08:55.949689" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.947428" elapsed="0.002310"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.947401" elapsed="0.002359"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.968462" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:55.968510" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:55.949903" elapsed="0.018630"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:55.970319" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:55.968612" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.968593" elapsed="0.001822"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:55.970449" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.970641" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:55.970685" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:55.928504" elapsed="0.042203"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:55.972855" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:55.971248" elapsed="0.001652"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:55.971230" elapsed="0.001692"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.973483" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.973067" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.974021" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:55.973671" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:55.974096" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:55.974274" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:55.970919" elapsed="0.003380"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:55.974472" 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-08-10T02:08:55.927842" elapsed="0.047078"/>
</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-08-10T02:08:55.880647" elapsed="0.094329"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:55.873701" elapsed="0.101394"/>
</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-08-10T02:08:55.985966" 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-08-10T02:08:55.986096" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.985830" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:55.986679" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2fc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:55.986277" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.987133" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:55.986859" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.987597" 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-08-10T02:08:55.987309" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:55.988041" 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-08-10T02:08:55.987773" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:55.988788" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.988213" elapsed="0.000606"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.989299" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.988971" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.989873" 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-08-10T02:08:55.989551" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.990407" 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-08-10T02:08:55.990066" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.990912" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:55.990599" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.991444" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:55.991107" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.991967" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2fc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:55.991639" 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-08-10T02:08:55.985502" elapsed="0.006562"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.992656" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:55.992212" elapsed="0.000476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:55.993081" level="INFO">&lt;?xml version="1.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-08-10T02:08:55.992841" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.001071" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.000774" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.005706" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.006408" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.006549" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.001226" elapsed="0.005358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.007158" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.006806" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.010831" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.007443" elapsed="0.003477"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:56.013432" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.011035" elapsed="0.002464"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.011005" elapsed="0.002518"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:56.013661" 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-08-10T02:08:56.013884" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.013751" elapsed="0.000215"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.013735" elapsed="0.000257"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.014026" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:56.015644" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.015689" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.000452" elapsed="0.015259"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.017848" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.016258" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.016240" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.018473" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.018058" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.019010" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.018659" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.019085" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.019262" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.015928" elapsed="0.003359"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.019461" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:55.999866" elapsed="0.020039"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.027709" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.027413" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.036125" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.039230" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.039891" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.027864" elapsed="0.012088"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.041023" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.040309" elapsed="0.000818"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.047213" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.041485" elapsed="0.006392"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.049718" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.047949" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.047930" elapsed="0.001859"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.069171" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.069219" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.049927" elapsed="0.019315"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.071103" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.069322" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.069302" elapsed="0.001882"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.071218" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.071430" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.071473" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.027025" elapsed="0.044470"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.073689" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.072049" elapsed="0.001685"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.072031" elapsed="0.001725"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.074302" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.073901" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.074856" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.074507" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.074932" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.075110" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.071717" 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-08-10T02:08:56.075291" 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-08-10T02:08:56.026413" elapsed="0.049426"/>
</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-08-10T02:08:55.982249" elapsed="0.093647"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:55.975401" elapsed="0.100609"/>
</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-08-10T02:08:56.086858" 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-08-10T02:08:56.087014" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:56.086716" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:56.087649" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:56.087200" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.088121" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:56.087840" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.088638" 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-08-10T02:08:56.088298" elapsed="0.000366"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.089085" 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-08-10T02:08:56.088814" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.090027" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:56.089260" elapsed="0.000799"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.090570" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.090217" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.091138" 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-08-10T02:08:56.090817" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.091683" 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-08-10T02:08:56.091352" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.092185" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:56.091874" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.092734" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:56.092409" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.093246" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.092928" 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-08-10T02:08:56.086374" elapsed="0.006995"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.093906" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:56.093518" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.094326" level="INFO">&lt;?xml version="1.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-08-10T02:08:56.094085" 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-08-10T02:08:56.102250" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.101949" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.107583" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.108135" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.108238" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.102423" elapsed="0.005841"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.108715" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.108460" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.111235" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.108903" elapsed="0.002383"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:56.113156" elapsed="0.000035"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.111377" elapsed="0.001854"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.111354" 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-08-10T02:08:56.113416" 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-08-10T02:08:56.113641" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.113508" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.113491" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.113747" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:56.115386" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.115433" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.101636" elapsed="0.013820"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.118000" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.115997" elapsed="0.002068"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.115979" elapsed="0.002116"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.118868" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.118296" elapsed="0.000609"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.119640" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.119127" elapsed="0.000550"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.119745" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:08:56.119994" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.115668" elapsed="0.004360"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.120242" elapsed="0.000657"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.101053" elapsed="0.019954"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.130024" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.129726" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.138095" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.139894" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.140178" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.130176" elapsed="0.010029"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.140663" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.140378" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.146143" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.140850" 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-08-10T02:08:56.149569" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.147173" elapsed="0.002446"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.147147" elapsed="0.002495"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.169570" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.169619" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.149787" elapsed="0.019855"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.171519" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.169722" elapsed="0.001854"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.169703" elapsed="0.001897"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.171635" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.171831" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.171876" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.129349" elapsed="0.042550"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.174071" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.172496" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.172477" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.174699" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.174282" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.175235" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.174885" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.175310" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:08:56.175508" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.172116" elapsed="0.003417"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.175689" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.128715" elapsed="0.047421"/>
</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-08-10T02:08:56.083087" elapsed="0.093107"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:56.076265" elapsed="0.100048"/>
</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-08-10T02:08:56.187175" 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-08-10T02:08:56.187357" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:56.187040" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:56.187931" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec12b600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:56.187537" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.188400" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:56.188107" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.192026" 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-08-10T02:08:56.191706" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.192513" 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-08-10T02:08:56.192201" elapsed="0.000338"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.193304" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:56.192690" elapsed="0.000661"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.193837" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.193505" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.194431" 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-08-10T02:08:56.194091" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.194946" 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-08-10T02:08:56.194624" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.195468" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.195136" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.195986" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.195663" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.196527" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec12b600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.196178" 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-08-10T02:08:56.186714" elapsed="0.009910"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.197145" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:56.196769" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.197578" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:08:56.197322" 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-08-10T02:08:56.205507" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.205191" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.211539" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.212126" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.212271" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.205661" elapsed="0.006646"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.212926" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.212570" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.216442" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.213185" elapsed="0.003387"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:56.219106" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.216671" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.216644" elapsed="0.002587"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:56.219448" 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-08-10T02:08:56.219808" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.219621" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.219597" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.219956" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:56.221907" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.221952" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.204880" elapsed="0.017094"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.224102" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.222534" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.222516" elapsed="0.001653"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.224744" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.224312" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.225275" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.224929" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.225368" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:56.225547" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.222187" elapsed="0.003385"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.225726" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.204295" elapsed="0.021872"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.233923" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.233629" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.243032" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.244938" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.245612" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.234075" elapsed="0.011597"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.246627" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.246027" elapsed="0.000701"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.254154" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.247040" elapsed="0.007775"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.256648" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.254886" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.254867" elapsed="0.001852"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.274790" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.274837" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.256857" elapsed="0.018003"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.276756" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.274938" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.274919" elapsed="0.001917"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.276870" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.277063" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.277106" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.233240" elapsed="0.043888"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.279264" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.277690" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.277672" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.279900" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.279503" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.280454" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.280086" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.280551" elapsed="0.000034"/>
</return>
<msg time="2026-08-10T02:08:56.280739" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.277358" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.280921" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.232629" elapsed="0.048759"/>
</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-08-10T02:08:56.183448" elapsed="0.097998"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:56.176637" elapsed="0.104921"/>
</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-08-10T02:08:56.292461" 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-08-10T02:08:56.292643" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:56.292250" elapsed="0.000423"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:56.293238" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:56.292830" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.293714" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:56.293436" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.294155" 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-08-10T02:08:56.293889" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.294612" 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-08-10T02:08:56.294343" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.295408" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:56.294784" elapsed="0.000655"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.295922" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.295593" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.296499" 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-08-10T02:08:56.296161" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.297045" 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-08-10T02:08:56.296718" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.297565" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.297235" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.298071" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.297757" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.298601" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbef600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.298264" 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-08-10T02:08:56.291920" elapsed="0.006778"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.299229" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:56.298844" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.299780" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:56.299529" 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-08-10T02:08:56.307737" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.307435" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.314424" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.314957" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.315059" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.307894" elapsed="0.007190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.315518" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.315244" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.318554" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.315707" 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-08-10T02:08:56.321182" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.318725" elapsed="0.002550"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.318698" elapsed="0.002611"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:56.321532" 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-08-10T02:08:56.321847" elapsed="0.000070"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.321658" elapsed="0.000307"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.321635" elapsed="0.000363"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.322044" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:08:56.324308" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.324393" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.307101" elapsed="0.017326"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.326810" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.325221" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.325204" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.327437" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.327025" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.327976" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.327624" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.328051" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.328228" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.324763" elapsed="0.003491"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.328425" 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-08-10T02:08:56.306539" 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-08-10T02:08:56.336679" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.336368" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.346938" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.349785" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.350445" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.336836" elapsed="0.013672"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.351466" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.350861" elapsed="0.000709"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.358532" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.351887" elapsed="0.007287"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.361063" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.359245" elapsed="0.001867"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.359226" elapsed="0.001908"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.380749" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.380798" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.361275" elapsed="0.019547"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.382686" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.380901" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.380883" elapsed="0.001886"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.382804" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.383000" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.383044" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.335978" elapsed="0.047089"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.385237" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.383630" elapsed="0.001652"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.383612" elapsed="0.001692"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.385865" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.385469" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.386423" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.386055" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.386500" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.386677" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.383282" 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-08-10T02:08:56.386858" 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-08-10T02:08:56.335365" elapsed="0.051938"/>
</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-08-10T02:08:56.288695" elapsed="0.098700"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:56.281801" elapsed="0.105724"/>
</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-08-10T02:08:56.398414" 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-08-10T02:08:56.398545" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:56.398260" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:56.399115" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec12b1a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:56.398724" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.399587" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:56.399292" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.400029" 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-08-10T02:08:56.399763" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.400487" 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-08-10T02:08:56.400202" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.401274" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:56.400674" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.401802" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.401475" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.402377" 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-08-10T02:08:56.402033" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.402896" 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-08-10T02:08:56.402571" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.403412" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:56.403085" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.403923" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:56.403608" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.404448" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec12b1a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.404115" 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-08-10T02:08:56.397934" elapsed="0.006610"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.405100" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:56.404722" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.405539" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:56.405279" 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-08-10T02:08:56.413451" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.413135" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.419559" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.420050" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.420150" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.413605" elapsed="0.006570"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.420636" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.420350" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.424073" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.420828" elapsed="0.003316"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:56.426742" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.424237" elapsed="0.002597"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.424212" 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-08-10T02:08:56.427062" 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-08-10T02:08:56.427442" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.427232" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.427207" elapsed="0.000341"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.427592" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:56.429610" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.429654" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.412824" elapsed="0.016853"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.431796" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.430213" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.430196" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.432421" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.432010" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.432975" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.432623" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.433051" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.433227" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.429887" elapsed="0.003364"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.433422" 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-08-10T02:08:56.412222" elapsed="0.021648"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.441626" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.441312" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.450149" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.452672" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.453068" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.441779" elapsed="0.011326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.453700" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.453325" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.459304" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.453964" elapsed="0.006259"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.462303" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.460322" elapsed="0.002045"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.460296" elapsed="0.002094"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.481383" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.481432" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.462527" elapsed="0.018929"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.483308" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.481535" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.481516" elapsed="0.001890"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.483441" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.483636" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.483680" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.440939" elapsed="0.042763"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.485861" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.484247" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.484229" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.486490" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.486074" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.487027" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.486677" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.487102" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.487278" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.483916" 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-08-10T02:08:56.487483" 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-08-10T02:08:56.440273" elapsed="0.047656"/>
</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-08-10T02:08:56.394671" elapsed="0.093314"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:56.387782" elapsed="0.100312"/>
</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-08-10T02:08:56.498922" 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-08-10T02:08:56.499056" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:56.498788" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:56.499652" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0353f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:56.499233" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.500154" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:56.499830" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.500655" 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-08-10T02:08:56.500351" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.501105" 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-08-10T02:08:56.500833" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.501980" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:56.501280" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.502517" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.502166" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.503085" 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-08-10T02:08:56.502764" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.503626" 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-08-10T02:08:56.503281" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.504128" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.503818" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.504699" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.504323" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.505222" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0353f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.504901" 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-08-10T02:08:56.498463" elapsed="0.006857"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.505883" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:56.505489" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.506305" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:56.506063" 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-08-10T02:08:56.514278" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.513976" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.520045" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.520608" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.520764" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.514455" elapsed="0.006336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.521201" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.520949" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.523727" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.521408" elapsed="0.002371"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:56.525613" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.523855" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.523835" elapsed="0.001871"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:56.525879" 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-08-10T02:08:56.526101" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.525969" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.525953" elapsed="0.000222"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.526206" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:56.527824" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.527869" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.513656" elapsed="0.014236"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.530208" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.528453" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.528436" elapsed="0.001866"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.531080" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.530527" elapsed="0.000591"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.531860" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.531366" elapsed="0.000531"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.531966" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:08:56.532216" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.528105" 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-08-10T02:08:56.532492" elapsed="0.000561"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.513077" elapsed="0.020066"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.542295" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.542001" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.551433" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.553904" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.554301" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.542468" elapsed="0.011892"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.554941" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.554586" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.560526" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.555200" elapsed="0.006287"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.563487" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.561588" elapsed="0.001948"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.561561" elapsed="0.001997"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.581483" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.581530" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.563695" elapsed="0.017858"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.583410" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.581631" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.581613" elapsed="0.001878"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.583524" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.583716" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.583760" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.541628" elapsed="0.042154"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.585953" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.584322" elapsed="0.001676"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.584304" elapsed="0.001716"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.586585" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.586166" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.587123" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.586773" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.587198" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.587418" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.583994" elapsed="0.003450"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.587600" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.541001" elapsed="0.047042"/>
</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-08-10T02:08:56.495204" elapsed="0.092895"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:56.488353" elapsed="0.099863"/>
</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-08-10T02:08:56.599091" 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-08-10T02:08:56.599234" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:56.598952" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:56.599827" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2acdb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:56.599436" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.600274" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:56.600003" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.600783" 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-08-10T02:08:56.600467" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.601227" 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-08-10T02:08:56.600958" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.602014" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:56.601417" elapsed="0.000627"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.602537" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.602197" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.603086" 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-08-10T02:08:56.602767" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.603623" 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-08-10T02:08:56.603279" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.604123" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:56.603813" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.604649" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:56.604316" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.605177" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2acdb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.604860" 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-08-10T02:08:56.598625" elapsed="0.006647"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.605814" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:56.605437" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.606229" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&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-08-10T02:08:56.605992" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.614099" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.613804" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.619090" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.619603" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.619705" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.614252" elapsed="0.005479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.620139" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.619889" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.622670" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.620324" elapsed="0.002398"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:56.624539" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.622789" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.622771" elapsed="0.001856"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:56.624799" 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-08-10T02:08:56.625058" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.624923" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.624905" elapsed="0.000227"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.625163" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:08:56.627229" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.627291" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.613494" elapsed="0.013828"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.630356" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.628100" elapsed="0.002322"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.628075" elapsed="0.002377"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.631209" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.630655" elapsed="0.000591"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.631978" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.631494" elapsed="0.000520"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.632082" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:08:56.632328" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.627641" elapsed="0.004746"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.632605" elapsed="0.000599"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.612925" elapsed="0.020368"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.641291" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.640994" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.650195" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.654279" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.654938" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.641464" elapsed="0.013535"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.655965" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.655394" elapsed="0.000673"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.661328" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.656517" elapsed="0.005480"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.663815" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.662069" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.662050" elapsed="0.001836"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.682571" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.682618" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.664024" elapsed="0.018617"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.684498" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.682718" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.682700" elapsed="0.001878"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.684612" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.684834" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.684877" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.640594" elapsed="0.044305"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.687038" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.685464" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.685446" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.687674" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.687256" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.688213" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.687863" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.688287" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.688483" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.685113" elapsed="0.003395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.688663" 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-08-10T02:08:56.639957" elapsed="0.049163"/>
</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-08-10T02:08:56.595398" elapsed="0.093777"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:56.588515" elapsed="0.100768"/>
</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-08-10T02:08:56.700088" 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-08-10T02:08:56.700218" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:56.699954" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:56.700857" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0354e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:56.700413" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.701308" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:56.701035" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.701769" 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-08-10T02:08:56.701503" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.702206" 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-08-10T02:08:56.701942" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.703092" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:56.702395" elapsed="0.000727"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.703619" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.703275" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.704170" 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-08-10T02:08:56.703848" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.704702" 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-08-10T02:08:56.704377" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.705220" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:56.704910" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.705819" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:56.705430" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.706504" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0354e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.706017" elapsed="0.000530"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:56.699624" elapsed="0.006979"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.707133" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:56.706751" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.707573" level="INFO">&lt;?xml version="1.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-08-10T02:08:56.707312" 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-08-10T02:08:56.715360" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.715035" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.720654" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.721220" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.721349" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.715517" elapsed="0.005860"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.721787" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.721538" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.724293" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.721972" elapsed="0.002388"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:56.726440" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.724433" elapsed="0.002151"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.724413" elapsed="0.002209"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:56.726819" 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-08-10T02:08:56.727130" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.726945" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.726923" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.727284" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:56.729610" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.729675" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.714713" elapsed="0.014993"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.732686" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.730484" elapsed="0.002302"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.730460" elapsed="0.002358"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.733607" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.733026" elapsed="0.000619"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.734266" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.733894" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.734356" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:56.734536" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.730002" elapsed="0.004559"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.734716" 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-08-10T02:08:56.714134" elapsed="0.021029"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.742903" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.742609" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.750328" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.752703" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.753113" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.743055" elapsed="0.010095"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.753753" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.753399" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.759366" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.754012" elapsed="0.006251"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.762659" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.760383" elapsed="0.002325"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.760356" elapsed="0.002374"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.781460" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.781507" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.762868" elapsed="0.018662"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.783428" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.781608" elapsed="0.001876"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.781589" elapsed="0.001919"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.783541" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.783734" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.783778" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.742219" elapsed="0.041581"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.785955" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.784361" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.784325" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.786580" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.786166" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.787116" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.786768" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.787190" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:56.787385" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.784015" elapsed="0.003395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.787568" elapsed="0.000380"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.741608" elapsed="0.046402"/>
</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-08-10T02:08:56.696362" elapsed="0.091704"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:56.689541" elapsed="0.098642"/>
</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-08-10T02:08:56.799120" 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-08-10T02:08:56.799264" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:56.798980" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:56.799888" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:56.799462" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.800362" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:56.800066" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.800821" 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-08-10T02:08:56.800540" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.801264" 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-08-10T02:08:56.800998" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.802196" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:56.801453" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.802729" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.802398" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.803282" 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-08-10T02:08:56.802960" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.803818" 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-08-10T02:08:56.803494" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.804485" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:56.804007" elapsed="0.000526"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.805038" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:56.804686" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.805577" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.805236" 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-08-10T02:08:56.798655" elapsed="0.007019"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.806199" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:56.805820" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.806637" level="INFO">&lt;?xml version="1.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-08-10T02:08:56.806395" 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-08-10T02:08:56.814376" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.814063" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.821472" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.821959" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.822059" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.814532" elapsed="0.007553"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.822511" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.822240" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.825143" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.822697" elapsed="0.002522"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:56.827786" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.825313" elapsed="0.002569"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.825288" elapsed="0.002628"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:56.828112" 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-08-10T02:08:56.828448" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.828238" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.828215" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.828598" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:56.830856" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.830919" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.813751" elapsed="0.017199"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.833925" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.831722" elapsed="0.002267"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.831698" elapsed="0.002321"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.834797" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.834220" elapsed="0.000614"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.835571" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.835058" elapsed="0.000549"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.835674" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:08:56.835919" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.831243" elapsed="0.004711"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.836170" elapsed="0.000554"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.813182" elapsed="0.023665"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.844882" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.844554" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.852900" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.855793" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.856464" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.845035" elapsed="0.011490"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.857897" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.856952" elapsed="0.001052"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.863946" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.858329" elapsed="0.006285"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.866452" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.864685" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.864666" elapsed="0.001857"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.884528" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.884576" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.866663" elapsed="0.017936"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.886499" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.884678" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.884659" elapsed="0.001920"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.886613" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.886805" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.886849" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.844162" elapsed="0.042709"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.889043" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.887434" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.887415" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.889675" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.889256" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.890206" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.889861" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.890280" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.890478" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.887085" 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-08-10T02:08:56.890657" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.843553" elapsed="0.047546"/>
</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-08-10T02:08:56.795397" elapsed="0.095758"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:56.788481" elapsed="0.102793"/>
</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-08-10T02:08:56.903047" 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-08-10T02:08:56.903188" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:56.902910" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:56.903806" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394c20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:56.903384" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.904257" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:56.903984" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.904717" 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-08-10T02:08:56.904450" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:56.905190" 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-08-10T02:08:56.904920" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.906123" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:56.905381" elapsed="0.000773"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.906652" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.906308" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.907206" 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-08-10T02:08:56.906887" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.907753" 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-08-10T02:08:56.907429" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.908252" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:56.907944" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.908778" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:56.908463" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.909510" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec394c20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:56.909019" elapsed="0.000535"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:56.902584" elapsed="0.007026"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.910141" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:56.909758" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.910588" level="INFO">&lt;?xml version="1.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-08-10T02:08:56.910321" elapsed="0.000330"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.918315" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.918009" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.924790" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.926048" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:56.926279" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.918492" elapsed="0.007874"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.927300" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.926727" elapsed="0.000708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.933480" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.927750" elapsed="0.005855"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:56.935590" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-08-10T02:08:56.933775" elapsed="0.001892"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.933727" elapsed="0.001966"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:56.935838" 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-08-10T02:08:56.936059" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.935928" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:56.935911" elapsed="0.000223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.936166" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:56.937812" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:56.937860" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:56.917694" elapsed="0.020189"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.940023" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.938448" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.938431" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.940649" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.940233" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.941212" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.940858" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.941287" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.941484" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.938101" elapsed="0.003408"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.941665" 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-08-10T02:08:56.917109" elapsed="0.025008"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.949903" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:56.949606" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:56.959089" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:56.963171" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:56.963827" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:56.950056" elapsed="0.013832"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.965219" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.964247" elapsed="0.001077"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.971802" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:56.965686" elapsed="0.006777"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.974281" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.972535" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.972516" elapsed="0.001852"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:56.993601" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:56.993648" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:56.974509" elapsed="0.019162"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:56.995526" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:56.993751" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.993731" elapsed="0.001876"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:56.995641" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.995834" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:56.995877" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:56.949214" elapsed="0.046685"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:56.998056" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:56.996467" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:56.996449" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.998684" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.998267" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:56.999218" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:56.998870" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:56.999293" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:56.999518" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:56.996117" elapsed="0.003426"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:56.999699" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:56.948563" elapsed="0.051583"/>
</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-08-10T02:08:56.899352" elapsed="0.100850"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:56.891533" elapsed="0.108792"/>
</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-08-10T02:08:57.011205" 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-08-10T02:08:57.011372" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.011064" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:57.011974" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d580&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:57.011554" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.012450" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:57.012152" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.012923" 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-08-10T02:08:57.012626" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.013384" 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-08-10T02:08:57.013098" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.014260" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.013558" elapsed="0.000733"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.014794" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.014460" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.015364" 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-08-10T02:08:57.015024" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.015879" 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-08-10T02:08:57.015557" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.016398" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.016069" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.016929" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.016593" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.017464" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d580&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.017125" 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-08-10T02:08:57.010734" elapsed="0.006828"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.018089" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:57.017709" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.018528" level="INFO">&lt;?xml version="1.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-08-10T02:08:57.018268" 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-08-10T02:08:57.026470" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.026152" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.032213" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.032722" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:57.032824" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.026624" elapsed="0.006226"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.033276" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.033026" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.035781" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.033482" elapsed="0.002349"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:57.037642" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:08:57.035898" elapsed="0.001839"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.035880" 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-08-10T02:08:57.037905" 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-08-10T02:08:57.038127" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.037994" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:57.037978" elapsed="0.000221"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.038231" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:57.039842" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:57.039887" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:57.025838" elapsed="0.014071"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.042207" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.040473" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.040455" elapsed="0.001846"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.043071" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.042523" elapsed="0.000585"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.043845" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.043328" elapsed="0.000557"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.043961" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:08:57.044210" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.040119" elapsed="0.004127"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.044485" 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-08-10T02:08:57.025207" elapsed="0.019972"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.054309" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.054016" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.062731" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.065250" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:57.065668" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.054480" elapsed="0.011225"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.066276" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.065927" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.072046" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.066589" elapsed="0.006413"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.075133" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.073103" elapsed="0.002079"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.073077" elapsed="0.002127"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.096458" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:57.096507" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:57.075357" elapsed="0.021174"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:57.098451" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.096618" elapsed="0.001891"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.096598" elapsed="0.001935"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:57.098568" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.098764" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:57.098808" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:57.053643" elapsed="0.045188"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.101005" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.099410" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.099391" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.101639" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.101219" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.102172" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.101826" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.102247" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.102442" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.099046" 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-08-10T02:08:57.102623" 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-08-10T02:08:57.053014" elapsed="0.050054"/>
</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-08-10T02:08:57.007499" elapsed="0.095626"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:57.000657" elapsed="0.102578"/>
</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-08-10T02:08:57.114017" 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-08-10T02:08:57.114153" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.113882" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:57.114776" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:57.114348" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.115231" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:57.114955" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.115701" 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-08-10T02:08:57.115433" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.116142" 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-08-10T02:08:57.115875" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.117074" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.116316" elapsed="0.000788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.117604" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.117259" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.118165" 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-08-10T02:08:57.117844" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.118701" 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-08-10T02:08:57.118375" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.119201" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.118892" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.119879" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.119415" elapsed="0.000511"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.120419" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.120079" 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-08-10T02:08:57.113555" elapsed="0.006963"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.121077" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:57.120665" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.121521" level="INFO">&lt;?xml version="1.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-08-10T02:08:57.121259" 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-08-10T02:08:57.129278" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.128964" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.135705" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.136266" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:57.136394" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.129454" elapsed="0.006967"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.136835" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.136584" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.140055" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.137064" elapsed="0.003062"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:57.142672" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:08:57.140223" elapsed="0.002595"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.140196" elapsed="0.002661"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:57.143058" 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-08-10T02:08:57.143397" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.143186" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:57.143162" elapsed="0.000341"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.143549" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:57.145857" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:57.145926" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:57.128614" elapsed="0.017337"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.148082" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.146514" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.146496" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.148704" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.148291" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.149249" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.148890" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.149323" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:08:57.149519" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.146167" elapsed="0.003377"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.149700" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:57.128028" elapsed="0.022116"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.157858" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.157567" elapsed="0.000318"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.167088" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.169632" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:57.170024" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.158011" elapsed="0.012050"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.170871" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.170283" elapsed="0.000653"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.176211" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.171140" elapsed="0.006026"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.179289" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.177267" elapsed="0.002086"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.177240" elapsed="0.002137"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.196546" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:57.196593" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:57.179518" elapsed="0.017098"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:57.198499" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.196695" elapsed="0.001861"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.196677" elapsed="0.001903"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:57.198614" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.198808" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:57.198852" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:57.157176" elapsed="0.041699"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.201032" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.199435" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.199417" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.201668" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.201245" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.202203" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.201855" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.202278" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.202479" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.199088" elapsed="0.003417"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.202660" 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-08-10T02:08:57.156553" elapsed="0.046552"/>
</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-08-10T02:08:57.110283" elapsed="0.092878"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:57.103457" elapsed="0.099820"/>
</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-08-10T02:08:57.214097" 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-08-10T02:08:57.214241" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.213957" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:57.214858" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4e00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:57.214438" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.215312" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:57.215036" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.215773" 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-08-10T02:08:57.215508" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.216214" 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-08-10T02:08:57.215947" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.217136" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.216405" elapsed="0.000762"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.217671" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.217324" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.218226" 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-08-10T02:08:57.217902" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.218763" 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-08-10T02:08:57.218437" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.219428" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.218954" elapsed="0.000522"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.219950" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.219628" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.220483" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4e00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.220146" 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-08-10T02:08:57.213629" elapsed="0.006952"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.221126" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:57.220728" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.221561" level="INFO">&lt;?xml version="1.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-08-10T02:08:57.221303" 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-08-10T02:08:57.229255" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.228928" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.234313" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.235022" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:57.235161" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.229426" elapsed="0.005770"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.235794" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.235443" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.239325" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.236054" elapsed="0.003368"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:57.242009" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-08-10T02:08:57.239518" elapsed="0.002593"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.239492" elapsed="0.002647"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:57.242281" 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-08-10T02:08:57.242524" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.242389" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:57.242372" elapsed="0.000227"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.242631" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:08:57.244231" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:57.244276" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:57.228615" elapsed="0.015683"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.246444" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.244855" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.244838" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.247047" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.246654" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.247600" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.247234" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.247676" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:57.247851" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.244527" elapsed="0.003349"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.248030" 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-08-10T02:08:57.228046" elapsed="0.020444"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.256200" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.255906" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.264461" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.266830" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:57.267493" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.256371" elapsed="0.011180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.268833" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.267904" elapsed="0.001033"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.275580" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.269291" elapsed="0.006939"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.278066" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.276301" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.276282" elapsed="0.001855"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.300849" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:57.300896" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:57.278274" elapsed="0.022645"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:57.302730" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.300998" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.300979" elapsed="0.001832"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:57.302844" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.303039" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:57.303083" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:57.255533" elapsed="0.047575"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.305274" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.303678" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.303660" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.305907" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.305507" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.306464" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.306095" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.306540" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.306717" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.303327" elapsed="0.003416"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.306898" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:57.254907" elapsed="0.052452"/>
</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-08-10T02:08:57.210386" elapsed="0.097032"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:57.203481" elapsed="0.104047"/>
</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-08-10T02:08:57.318263" 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-08-10T02:08:57.318412" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.318129" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:57.319011" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e58a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:57.318591" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.319484" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:57.319187" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.319926" 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-08-10T02:08:57.319660" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.320381" 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-08-10T02:08:57.320099" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.321362" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.320556" elapsed="0.000839"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.321874" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.321547" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.322439" 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-08-10T02:08:57.322102" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.322955" 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-08-10T02:08:57.322631" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.323474" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.323146" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.323984" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.323668" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.324513" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e58a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.324178" 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-08-10T02:08:57.317800" elapsed="0.006809"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.325149" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:57.324756" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.325750" level="INFO">&lt;?xml version="1.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-08-10T02:08:57.325327" elapsed="0.000487"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.333551" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.333213" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.338773" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.339542" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:57.339685" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.333710" elapsed="0.006010"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.340290" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.339941" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.343857" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.340579" elapsed="0.003349"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:57.346558" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:08:57.344081" elapsed="0.002571"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.344052" elapsed="0.002635"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:57.346887" 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-08-10T02:08:57.347201" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.347014" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:57.346991" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.347375" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:08:57.349666" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:57.349730" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:57.332828" elapsed="0.016934"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.351971" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.350409" elapsed="0.001608"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.350391" elapsed="0.001647"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.352595" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.352183" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.353147" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.352779" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.353225" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.353420" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.350064" elapsed="0.003381"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.353599" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:57.332260" elapsed="0.021783"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.361879" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.361584" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.370827" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.373397" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:57.373793" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.362033" elapsed="0.011797"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.374443" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.374055" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.380099" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.374713" elapsed="0.006314"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.383380" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.381163" elapsed="0.002269"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.381136" elapsed="0.002319"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.407449" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:57.407498" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:57.383596" elapsed="0.023926"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:57.409375" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.407602" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.407583" elapsed="0.001875"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:57.409492" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:57.409690" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:57.409735" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:57.361186" elapsed="0.048573"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.411971" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.410314" elapsed="0.001703"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.410296" elapsed="0.001743"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.412611" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.412187" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.413183" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.412801" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.413264" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:57.413464" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.409977" 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-08-10T02:08:57.413647" 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-08-10T02:08:57.360554" elapsed="0.053548"/>
</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-08-10T02:08:57.314550" elapsed="0.099610"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:57.307695" elapsed="0.106584"/>
</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-08-10T02:08:57.425179" 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-08-10T02:08:57.425349" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.425028" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:57.425967" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1a8d60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:57.425531" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.426443" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:57.426145" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.426887" 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-08-10T02:08:57.426620" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.427327" 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-08-10T02:08:57.427060" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.428281" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.427524" elapsed="0.000788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.428818" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.428485" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.429428" 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-08-10T02:08:57.429051" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.429952" 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-08-10T02:08:57.429626" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.430474" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.430145" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.430986" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.430670" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.431671" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1a8d60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.431181" elapsed="0.000533"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:57.424700" elapsed="0.007071"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.432304" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:57.431919" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.432741" level="INFO">&lt;?xml version="1.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-08-10T02:08:57.432501" 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-08-10T02:08:57.440487" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.440165" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.445784" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.446544" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:57.446686" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.440641" elapsed="0.006080"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.447288" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.446940" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.450850" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.447577" elapsed="0.003344"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:57.453534" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:57.451060" elapsed="0.002566"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.451032" elapsed="0.002628"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:57.453859" 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-08-10T02:08:57.454172" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.453984" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:57.453961" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.454320" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:08:57.456606" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:57.456668" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:57.439852" elapsed="0.016848"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.459253" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.457522" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.457497" elapsed="0.001824"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.459881" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.459482" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.460433" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.460066" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.460507" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.460683" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.456994" elapsed="0.003715"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.460862" 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-08-10T02:08:57.439281" 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-08-10T02:08:57.469025" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.468731" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.478579" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.481068" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:57.481512" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.469192" elapsed="0.012357"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.482328" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.481770" elapsed="0.000650"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.487717" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.482622" elapsed="0.006012"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.491196" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.488732" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.488706" elapsed="0.002588"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.514843" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:57.514890" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:57.491509" elapsed="0.023405"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:57.516696" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.514990" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.514972" elapsed="0.001803"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:57.516809" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:57.517001" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:57.517044" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:57.468356" elapsed="0.048710"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.519230" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.517655" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.517637" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.519886" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.519475" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.520439" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.520072" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.520514" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:57.520690" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.517307" elapsed="0.003408"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.520869" 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-08-10T02:08:57.467734" elapsed="0.053617"/>
</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-08-10T02:08:57.421456" elapsed="0.099954"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:57.414573" elapsed="0.106946"/>
</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-08-10T02:08:57.532253" 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-08-10T02:08:57.532400" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.532119" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:57.533001" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dbc90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:57.532577" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.533497" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:57.533202" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.533940" 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-08-10T02:08:57.533673" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.534396" 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-08-10T02:08:57.534112" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.535315" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.534571" elapsed="0.000792"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.535846" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.535519" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.536423" 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-08-10T02:08:57.536085" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.536943" 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-08-10T02:08:57.536617" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.537481" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.537134" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.537993" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.537678" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.538676" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0dbc90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.538188" elapsed="0.000531"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:57.531792" elapsed="0.006983"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.539312" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:57.538925" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.539760" level="INFO">&lt;?xml version="1.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-08-10T02:08:57.539518" 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-08-10T02:08:57.547655" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.547317" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.554296" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.554849" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:57.554951" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.547811" elapsed="0.007165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.555403" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.555135" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.558040" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.555591" elapsed="0.002524"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:57.560750" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:08:57.558276" elapsed="0.002568"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.558247" elapsed="0.002631"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:57.561076" 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-08-10T02:08:57.561432" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.561221" elapsed="0.000288"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:57.561197" elapsed="0.000344"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.561587" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:57.563858" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:57.563921" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:57.546996" elapsed="0.016957"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.566714" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.564730" elapsed="0.002029"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.564705" elapsed="0.002076"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.567322" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.566927" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.567873" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.567526" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.567947" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.568123" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.564249" elapsed="0.003899"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.568303" 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-08-10T02:08:57.546428" elapsed="0.022340"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.576512" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.576200" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.584714" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.587216" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:57.587628" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.576665" elapsed="0.011000"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.588462" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.587884" elapsed="0.000644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.593822" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.588726" elapsed="0.005795"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.596353" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.594592" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.594573" elapsed="0.001852"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.670002" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:57.670066" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:57.596565" elapsed="0.073527"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:57.672051" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.670221" elapsed="0.001892"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.670188" elapsed="0.001951"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:57.672177" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:08:57.672410" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:57.672456" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:57.575831" elapsed="0.096648"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.674694" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.673089" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.673071" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.675386" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.674914" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.675923" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.675575" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.675997" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:57.676171" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.672732" 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-08-10T02:08:57.676366" 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-08-10T02:08:57.575206" elapsed="0.101628"/>
</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-08-10T02:08:57.528569" elapsed="0.148323"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:57.521755" elapsed="0.155262"/>
</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-08-10T02:08:57.687863" 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-08-10T02:08:57.688027" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.687720" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:57.688650" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ae020&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:57.688206" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.689109" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:57.688828" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.689590" 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-08-10T02:08:57.689297" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.690029" 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-08-10T02:08:57.689764" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.690898" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.690202" elapsed="0.000728"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.691581" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.691083" elapsed="0.000541"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.692154" 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-08-10T02:08:57.691833" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.692686" 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-08-10T02:08:57.692361" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.693184" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.692875" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.693735" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.693419" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.694240" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ae020&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.693926" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:57.687390" elapsed="0.006962"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.694875" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:57.694500" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.695290" level="INFO">&lt;?xml version="1.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-08-10T02:08:57.695051" 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-08-10T02:08:57.702971" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.702662" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.708435" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.709004" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:57.709107" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.703124" elapsed="0.006009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.709603" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.709332" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.713076" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.709791" elapsed="0.003358"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:57.715702" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:57.713260" elapsed="0.002534"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.713218" elapsed="0.002610"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:57.716068" 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-08-10T02:08:57.716403" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.716194" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:57.716171" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.716552" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:57.718627" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:57.718673" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:57.702349" elapsed="0.016347"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.720819" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.719240" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.719222" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.721468" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.721032" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.722009" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.721655" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.722084" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:57.722258" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.718911" elapsed="0.003372"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.722454" 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-08-10T02:08:57.701787" elapsed="0.021112"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.730586" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.730272" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.741024" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.744144" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:57.744832" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.730739" elapsed="0.014153"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.745869" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.745243" elapsed="0.000728"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.752065" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.746290" elapsed="0.006447"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.754576" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.752815" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.752795" elapsed="0.001854"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.778669" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:57.778716" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:57.754795" elapsed="0.023943"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:57.780562" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.778816" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.778797" elapsed="0.001847"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:57.780678" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:57.780876" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:57.780920" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:57.729900" elapsed="0.051042"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.783123" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.781553" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.781534" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.783774" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.783359" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.784308" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.783962" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.784401" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.784579" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.781169" elapsed="0.003435"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.784758" 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-08-10T02:08:57.729275" elapsed="0.055935"/>
</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-08-10T02:08:57.684139" elapsed="0.101137"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:57.677378" elapsed="0.108038"/>
</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-08-10T02:08:57.796243" 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-08-10T02:08:57.796423" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.796102" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:57.797032" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee44a070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:57.796602" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.797543" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:57.797211" elapsed="0.000363"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.797994" 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-08-10T02:08:57.797725" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.798466" 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-08-10T02:08:57.798169" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.799402" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.798641" elapsed="0.000792"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.799921" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.799587" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.800491" 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-08-10T02:08:57.800152" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.801011" 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-08-10T02:08:57.800686" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.801542" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.801201" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.802057" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:08:57.801740" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.802741" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee44a070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.802250" elapsed="0.000535"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:57.795752" elapsed="0.007090"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.803398" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:08:57.802992" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.803825" level="INFO">&lt;?xml version="1.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-08-10T02:08:57.803581" 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-08-10T02:08:57.811533" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.811213" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.816911" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.817436" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:57.817540" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.811690" elapsed="0.005877"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.817985" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.817730" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.820500" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.818171" elapsed="0.002380"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:57.822654" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:57.820651" elapsed="0.002096"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.820631" elapsed="0.002150"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:57.822978" 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-08-10T02:08:57.823289" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.823104" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:57.823080" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.823464" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:57.825730" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:57.825793" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:57.810896" elapsed="0.014929"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.828803" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.826603" elapsed="0.002264"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.826578" elapsed="0.002319"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.829714" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.829100" elapsed="0.000653"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.830300" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.829952" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.830393" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.830569" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.826121" elapsed="0.004473"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.830746" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:57.810325" elapsed="0.020863"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.838890" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.838597" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.848419" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.850779" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:57.851442" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.839043" elapsed="0.012459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.852790" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.851858" elapsed="0.001037"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.859462" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.853216" elapsed="0.006909"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.861963" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.860197" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.860178" elapsed="0.001856"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.884345" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:57.884395" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:57.862174" elapsed="0.022244"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:57.886197" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.884497" elapsed="0.001756"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.884478" elapsed="0.001799"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:57.886311" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:08:57.886522" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:57.886566" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:57.838207" elapsed="0.048381"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.888707" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.887129" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.887111" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.889315" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.888918" elapsed="0.000477"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.889923" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.889572" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.889998" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:57.890174" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.886801" elapsed="0.003398"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.890370" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:57.837600" elapsed="0.053216"/>
</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-08-10T02:08:57.792520" elapsed="0.098352"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:57.785705" elapsed="0.105277"/>
</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-08-10T02:08:57.901744" 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-08-10T02:08:57.901876" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:57.901607" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:57.902479" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88cc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:57.902055" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.902931" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:57.902656" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.903390" 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-08-10T02:08:57.903106" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:57.903832" 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-08-10T02:08:57.903565" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.904700" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.904004" elapsed="0.000727"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.905212" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.904889" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.905810" 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-08-10T02:08:57.905487" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.906322" 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-08-10T02:08:57.906002" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.906840" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:57.906531" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.907363" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.907033" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.907874" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb88cc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:57.907558" 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-08-10T02:08:57.901256" elapsed="0.006714"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.908509" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:08:57.908115" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.908927" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:57.908687" 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-08-10T02:08:57.916802" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.916505" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.921921" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.922622" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:57.922762" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.916958" elapsed="0.005839"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.923388" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.923016" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.926901" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.923650" elapsed="0.003322"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:57.929513" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-08-10T02:08:57.927067" elapsed="0.002537"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.927041" elapsed="0.002645"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:57.929887" 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-08-10T02:08:57.930199" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.930013" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:57.929990" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.930369" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:57.932617" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:57.932679" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:57.916173" elapsed="0.016539"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.935167" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.933522" elapsed="0.001690"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.933498" elapsed="0.001736"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.935788" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.935396" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.936323" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.935979" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.936416" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.936592" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.933007" elapsed="0.003610"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.936772" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:57.915624" elapsed="0.021589"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.944954" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:57.944661" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:57.954198" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:57.956752" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:57.957165" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:57.945109" elapsed="0.012093"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.957866" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.957482" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.963504" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:57.958131" elapsed="0.006330"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.966749" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.964567" elapsed="0.002233"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.964539" elapsed="0.002283"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:57.993573" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:57.993620" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:57.966964" elapsed="0.026679"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:57.995479" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:57.993722" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.993703" elapsed="0.001856"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:57.995593" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:08:57.995796" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:57.995839" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:57.944260" elapsed="0.051602"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:57.998043" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:57.996455" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:57.996437" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.998677" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.998255" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:57.999214" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:57.998867" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:57.999288" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:57.999484" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:57.996096" elapsed="0.003413"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:57.999663" 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-08-10T02:08:57.943651" elapsed="0.056466"/>
</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-08-10T02:08:57.898038" elapsed="0.102135"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:57.891227" elapsed="0.109064"/>
</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-08-10T02:08:58.011207" 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-08-10T02:08:58.011377" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.011069" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.011971" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec12b830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.011557" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.012447" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.012148" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.012896" 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-08-10T02:08:58.012624" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.013351" 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-08-10T02:08:58.013069" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.014236" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.013553" elapsed="0.000714"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.014767" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.014438" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.015357" 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-08-10T02:08:58.015021" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.015871" 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-08-10T02:08:58.015550" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.016384" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.016060" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.016892" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.016578" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.017428" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec12b830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.017084" 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-08-10T02:08:58.010738" elapsed="0.006791"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.018053" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.017675" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.018491" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:58.018231" 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-08-10T02:08:58.026391" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.026073" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.031543" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.032119" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.032259" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.026546" elapsed="0.005750"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.032897" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.032544" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.036464" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.033159" elapsed="0.003377"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.039092" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.036632" elapsed="0.002552"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.036606" 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-08-10T02:08:58.039485" 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-08-10T02:08:58.039801" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.039613" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.039590" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.039952" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:58.042144" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.042189" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.025762" elapsed="0.016450"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.044363" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.042772" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.042755" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.044972" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.044577" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.045533" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.045156" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.045608" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.045786" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.042441" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.045970" 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-08-10T02:08:58.025176" elapsed="0.021259"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.054175" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.053880" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.063460" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.065788" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:58.066368" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.054329" elapsed="0.012080"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.066985" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.066632" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.072597" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.067244" elapsed="0.006303"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.075500" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.073648" elapsed="0.001901"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.073622" elapsed="0.001949"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.098875" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:58.098923" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:58.075709" elapsed="0.023238"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:58.100750" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.099026" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.099007" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:58.100865" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.101059" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:58.101103" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.053499" elapsed="0.047626"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.103286" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.101708" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.101686" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.103920" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.103517" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.104473" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.104107" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.104549" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.104726" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.101363" 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-08-10T02:08:58.104905" 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-08-10T02:08:58.052858" elapsed="0.052509"/>
</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-08-10T02:08:58.007462" elapsed="0.097963"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.000601" elapsed="0.104968"/>
</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-08-10T02:08:58.116379" 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-08-10T02:08:58.116516" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.116224" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.117106" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2c090&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.116695" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.117592" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.117284" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.118036" 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-08-10T02:08:58.117771" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.118495" 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-08-10T02:08:58.118211" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.119372" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.118668" elapsed="0.000736"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.119884" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.119559" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.120452" 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-08-10T02:08:58.120115" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.120969" 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-08-10T02:08:58.120645" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.121513" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.121158" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.122032" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.121710" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.122561" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2c090&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.122226" 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-08-10T02:08:58.115896" elapsed="0.006761"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.123180" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.122804" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.123637" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:58.123395" 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-08-10T02:08:58.131556" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.131231" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.136885" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.137408" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.137541" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.131709" elapsed="0.005862"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.138047" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.137729" elapsed="0.000379"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.141628" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.138304" elapsed="0.003396"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.144236" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.141794" elapsed="0.002533"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.141769" 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-08-10T02:08:58.144630" 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-08-10T02:08:58.144942" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.144756" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.144734" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.145089" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:08:58.147006" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.147051" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.130919" elapsed="0.016155"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.149196" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.147628" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.147611" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.149840" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.149425" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.150396" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.150027" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.150471" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.150648" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.147284" elapsed="0.003389"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.150825" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:58.130356" elapsed="0.020911"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.159012" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.158719" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.165747" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.168263" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:58.168714" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.159166" elapsed="0.009586"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.169380" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.168988" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.174898" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.169662" elapsed="0.005899"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.177396" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.175636" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.175616" elapsed="0.001865"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.199754" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:58.199801" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:58.177622" elapsed="0.022203"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:58.201638" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.199904" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.199884" elapsed="0.001836"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:58.201755" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:58.201955" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:58.201999" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.158326" elapsed="0.043695"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.204186" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.202607" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.202588" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.204821" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.204417" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.205402" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.205008" elapsed="0.000423"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.205515" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:58.205698" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.202251" 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-08-10T02:08:58.205881" 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-08-10T02:08:58.157716" elapsed="0.048633"/>
</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-08-10T02:08:58.112639" elapsed="0.093772"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.105832" elapsed="0.100698"/>
</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-08-10T02:08:58.217248" 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-08-10T02:08:58.217412" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.217109" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.218025" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2f70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.217606" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.218500" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.218204" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.218941" 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-08-10T02:08:58.218676" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.219396" 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-08-10T02:08:58.219114" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.220256" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.219569" elapsed="0.000718"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.220784" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.220458" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.221355" 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-08-10T02:08:58.221015" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.221908" 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-08-10T02:08:58.221578" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.222429" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.222100" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.222942" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.222625" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.223471" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2f70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.223135" 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-08-10T02:08:58.216781" elapsed="0.006788"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.224093" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.223716" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.224534" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:58.224271" 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-08-10T02:08:58.232481" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.232162" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.237825" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.238436" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.238579" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.232636" elapsed="0.005979"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.239182" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.238835" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.242750" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.239465" elapsed="0.003357"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.245367" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.242921" elapsed="0.002541"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.242895" elapsed="0.002703"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:58.245855" 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-08-10T02:08:58.246169" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.245984" elapsed="0.000237"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.245961" elapsed="0.000283"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.246276" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:58.247893" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.247938" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.231845" elapsed="0.016116"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.250104" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.248520" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.248503" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.250728" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.250316" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.251266" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.250918" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.251360" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:58.251540" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.248172" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.251718" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:58.231277" elapsed="0.020884"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.259902" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.259608" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.268701" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.271063" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:58.271714" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.260056" elapsed="0.011720"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.272735" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.272128" elapsed="0.000709"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.279853" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.273156" elapsed="0.007394"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.282399" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.280622" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.280602" elapsed="0.001869"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.305462" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:58.305509" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:58.282610" elapsed="0.022922"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:58.307361" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.305621" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.305602" elapsed="0.001842"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:58.307479" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.307674" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:58.307717" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.259221" elapsed="0.048519"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.309925" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.308285" elapsed="0.001686"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.308267" elapsed="0.001726"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.310558" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.310140" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.311099" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.310745" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.311175" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.311370" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.307957" elapsed="0.003439"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.311553" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:58.258611" elapsed="0.053388"/>
</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-08-10T02:08:58.213538" elapsed="0.098518"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.206716" elapsed="0.105449"/>
</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-08-10T02:08:58.323004" 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-08-10T02:08:58.323136" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:58.322870" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.323748" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2d40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.323314" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.324198" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.323926" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.324663" 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-08-10T02:08:58.324393" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.325101" 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-08-10T02:08:58.324836" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.326063" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:58.325272" elapsed="0.000821"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.326593" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.326246" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.327148" 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-08-10T02:08:58.326824" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.327684" 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-08-10T02:08:58.327358" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.328183" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.327875" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.328710" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.328393" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.329218" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe2d40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.328903" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:58.322543" elapsed="0.006770"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.329874" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:58.329477" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.330293" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:58.330053" 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-08-10T02:08:58.338204" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.337908" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.343737" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.344438" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.344580" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.338375" elapsed="0.006240"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.345184" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.344835" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.348755" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.345478" elapsed="0.003349"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.351437" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.348969" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.348940" elapsed="0.002623"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:58.351757" 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-08-10T02:08:58.352065" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.351881" elapsed="0.000255"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.351859" elapsed="0.000308"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.352212" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:58.354396" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.354443" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.337589" elapsed="0.016876"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.356585" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.355007" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.354990" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.357189" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.356797" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.357755" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.357389" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.357832" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:58.358010" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.354678" elapsed="0.003357"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.358188" 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-08-10T02:08:58.337005" elapsed="0.021644"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.366354" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.366044" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.375235" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.377799" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:58.378222" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.366510" elapsed="0.011749"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.378905" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.378529" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.384537" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.379165" elapsed="0.006449"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.388173" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.385721" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.385693" elapsed="0.002581"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.409549" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:58.409608" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:58.388491" elapsed="0.021142"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:58.411466" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.409712" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.409693" elapsed="0.001854"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:58.411580" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:58.411781" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:58.411825" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.365673" elapsed="0.046174"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.414052" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.412447" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.412429" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.414693" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.414270" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.415226" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.414879" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.415301" elapsed="0.000059"/>
</return>
<msg time="2026-08-10T02:08:58.415527" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.412086" elapsed="0.003467"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.415709" 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-08-10T02:08:58.365039" elapsed="0.051123"/>
</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-08-10T02:08:58.319281" elapsed="0.096939"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.312355" elapsed="0.104002"/>
</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-08-10T02:08:58.427293" 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-08-10T02:08:58.427458" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:58.427153" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.428075" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9dee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.427638" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.428555" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.428256" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.428997" 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-08-10T02:08:58.428731" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.429453" 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-08-10T02:08:58.429170" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.430432" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:58.429655" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.430947" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.430619" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.431522" 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-08-10T02:08:58.431182" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.432041" 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-08-10T02:08:58.431716" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.432563" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.432232" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.433074" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.432756" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.433620" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9dee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.433267" 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-08-10T02:08:58.426823" elapsed="0.006894"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.434255" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:08:58.433864" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.434859" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:08:58.434453" 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-08-10T02:08:58.442684" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.442376" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.448276" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.448799" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.448924" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.442839" elapsed="0.006121"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.449563" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.449182" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.453147" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.449848" elapsed="0.003371"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.455829" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.453380" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.453351" elapsed="0.002606"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:58.456150" 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-08-10T02:08:58.456484" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.456275" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.456252" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.456634" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:58.458704" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.458749" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.442044" elapsed="0.016728"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.460896" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.459313" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.459296" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.461515" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.461106" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.462099" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.461714" elapsed="0.000411"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.462174" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.462369" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.458985" elapsed="0.003410"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.462550" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:58.441471" elapsed="0.021520"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.470744" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.470451" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.479354" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.481697" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:58.482100" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.470897" elapsed="0.011240"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.482732" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.482380" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.488325" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.482992" elapsed="0.006306"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.491390" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.489422" elapsed="0.002018"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.489394" elapsed="0.002068"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.510973" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:58.511020" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:58.491601" elapsed="0.019443"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:58.512849" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.511121" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.511103" elapsed="0.001825"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:58.512961" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:58.513153" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:58.513196" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.470061" elapsed="0.043158"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.515416" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.513818" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.513799" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.516025" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.515629" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.516580" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.516211" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.516656" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.516833" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.513455" elapsed="0.003402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.517011" 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-08-10T02:08:58.469433" elapsed="0.048040"/>
</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-08-10T02:08:58.423556" elapsed="0.093972"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.416677" elapsed="0.100961"/>
</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-08-10T02:08:58.528494" 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-08-10T02:08:58.528627" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.528356" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.529220" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee1b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.528804" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.529717" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.529414" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.530164" 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-08-10T02:08:58.529893" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.530622" 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-08-10T02:08:58.530353" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.531515" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.530797" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.532028" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.531698" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.532601" 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-08-10T02:08:58.532258" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.533116" 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-08-10T02:08:58.532793" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.533635" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.533306" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.534161" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.533843" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.534690" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbee1b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.534372" 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-08-10T02:08:58.528014" elapsed="0.006772"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.535310" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.534931" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.535746" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:58.535507" 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-08-10T02:08:58.543643" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.543327" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.549383" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.549883" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.549985" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.543799" elapsed="0.006211"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.550444" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.550174" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.552950" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.550633" elapsed="0.002368"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.554828" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.553068" elapsed="0.001858"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.553050" elapsed="0.001903"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:58.555094" 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-08-10T02:08:58.555319" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.555184" elapsed="0.000204"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.555168" elapsed="0.000243"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.555443" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:58.557048" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.557093" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.543015" elapsed="0.014101"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.559785" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.557698" elapsed="0.002151"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.557652" elapsed="0.002227"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.560655" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.560082" elapsed="0.000611"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.561427" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.560916" elapsed="0.000547"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.561532" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:08:58.561802" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.557326" elapsed="0.004511"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.562054" 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-08-10T02:08:58.542464" elapsed="0.020233"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.571397" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.571085" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.579987" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.582575" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:58.582981" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.571550" elapsed="0.011468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.583664" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.583266" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.589264" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.583931" elapsed="0.006399"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.592320" elapsed="0.000032"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.590460" elapsed="0.001928"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.590432" elapsed="0.001979"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.615055" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:58.615103" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:58.592551" elapsed="0.022576"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:58.616926" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.615207" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.615188" elapsed="0.001819"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:58.617041" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:58.617241" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:58.617284" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.570711" elapsed="0.046596"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.619501" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.617902" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.617884" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.620123" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.619720" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.620717" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.620310" elapsed="0.000433"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.620793" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.620971" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.617554" 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-08-10T02:08:58.621150" 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-08-10T02:08:58.570087" elapsed="0.051532"/>
</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-08-10T02:08:58.524763" elapsed="0.096913"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.517893" elapsed="0.103929"/>
</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-08-10T02:08:58.632692" 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-08-10T02:08:58.632839" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.632553" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.633444" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff07c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.633022" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.633912" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.633623" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.634372" 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-08-10T02:08:58.634090" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.634811" 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-08-10T02:08:58.634547" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.635690" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.634989" elapsed="0.000732"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.636203" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.635875" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.636779" 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-08-10T02:08:58.636458" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.637319" 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-08-10T02:08:58.636972" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.637870" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:08:58.637529" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.638406" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.638064" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.638913" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfff07c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.638598" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:58.632210" elapsed="0.006798"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.639552" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:08:58.639155" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.639970" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:08:58.639730" 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-08-10T02:08:58.647882" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.647577" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.653906" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.654417" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.654519" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.648041" elapsed="0.006504"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.655003" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.654703" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.658544" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.655262" elapsed="0.003354"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.661152" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.658711" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.658685" elapsed="0.002592"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:58.661495" 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-08-10T02:08:58.661895" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.661666" elapsed="0.000303"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.661642" elapsed="0.000360"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.662046" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:58.663911" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.663955" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.647246" elapsed="0.016732"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.666114" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.664533" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.664516" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.666738" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.666326" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.667274" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.666929" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.667366" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:58.667546" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.664187" elapsed="0.003385"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.667725" elapsed="0.000378"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:08:58.646690" elapsed="0.021475"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.675903" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.675607" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.684749" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.686541" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:58.686821" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.676056" elapsed="0.010792"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.687257" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.687007" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.691447" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.687460" elapsed="0.004960"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.694988" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.692523" elapsed="0.002533"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.692496" elapsed="0.002591"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.717601" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:58.717649" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:58.695282" elapsed="0.022390"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:58.719470" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.717764" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.717732" elapsed="0.001818"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:58.719583" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.719776" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:58.719820" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.675215" elapsed="0.044627"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.721999" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.720400" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.720382" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.722632" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.722212" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.723168" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.722821" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.723243" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:58.723437" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.720055" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.723617" 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-08-10T02:08:58.674606" elapsed="0.049454"/>
</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-08-10T02:08:58.628940" elapsed="0.095176"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.622124" elapsed="0.102102"/>
</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-08-10T02:08:58.735061" 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-08-10T02:08:58.735191" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:58.734924" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.735768" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0366b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.735386" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.736225" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.735945" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.736686" 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-08-10T02:08:58.736418" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.737123" 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-08-10T02:08:58.736858" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.737885" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:58.737295" elapsed="0.000621"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.738414" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.738068" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.738967" 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-08-10T02:08:58.738647" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.739499" 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-08-10T02:08:58.739158" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.739999" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:58.739689" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.740525" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:58.740192" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.741034" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0366b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.740718" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:58.734597" elapsed="0.006533"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.741676" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:58.741274" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.742110" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:58.741871" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.749989" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.749677" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.755310" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.755826" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.755970" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.750144" elapsed="0.005870"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.756618" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.756237" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.760137" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.756876" elapsed="0.003332"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.762768" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.760302" elapsed="0.002557"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.760276" elapsed="0.002617"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:58.763085" 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-08-10T02:08:58.763422" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.763209" elapsed="0.000335"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.763186" elapsed="0.000393"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.763625" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:08:58.765930" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.765992" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.749363" elapsed="0.016661"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.768405" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.766797" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.766773" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.769008" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.768617" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.769558" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.769192" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.769633" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.769819" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.766319" elapsed="0.003526"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.769999" 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-08-10T02:08:58.748789" 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-08-10T02:08:58.778181" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.777883" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.787028" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.789596" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:58.790032" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.778353" elapsed="0.011717"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.790708" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.790312" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.796319" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.790967" 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-08-10T02:08:58.799355" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.797456" elapsed="0.001952"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.797427" elapsed="0.002005"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.820423" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:58.820473" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:58.799581" elapsed="0.020916"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:58.822363" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.820581" elapsed="0.001840"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.820560" elapsed="0.001886"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:58.822481" elapsed="0.000036"/>
</return>
<msg time="2026-08-10T02:08:58.822694" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:58.822737" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.777501" elapsed="0.045258"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.824965" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.823388" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.823370" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.825627" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.825186" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.826180" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.825829" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.826255" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:58.826451" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.823018" 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-08-10T02:08:58.826633" 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-08-10T02:08:58.776878" elapsed="0.050216"/>
</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-08-10T02:08:58.731321" elapsed="0.095832"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.724492" elapsed="0.102793"/>
</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-08-10T02:08:58.838317" 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-08-10T02:08:58.838503" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:58.838172" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.839103" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395b20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.838683" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.839585" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.839283" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.840026" 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-08-10T02:08:58.839762" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.840492" 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-08-10T02:08:58.840198" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.841324" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:58.840668" elapsed="0.000707"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.841878" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.841533" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.842463" 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-08-10T02:08:58.842119" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.842981" 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-08-10T02:08:58.842658" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.843507" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:58.843170" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.844013" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:58.843701" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.844540" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec395b20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.844206" 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-08-10T02:08:58.837838" elapsed="0.006798"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.845159" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:58.844782" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.845593" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:58.845352" 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-08-10T02:08:58.853516" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.853192" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.860523" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.861075" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.861177" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.853672" elapsed="0.007531"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.861633" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.861380" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.864734" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.861849" elapsed="0.002957"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.871214" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.864901" elapsed="0.006396"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.864875" elapsed="0.006446"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:58.871498" 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-08-10T02:08:58.871766" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.871631" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.871613" elapsed="0.000228"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.871878" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:58.873506" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.873551" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.852870" elapsed="0.020703"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.875729" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.874134" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.874117" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.876369" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.875941" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.876929" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.876556" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.877011" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:08:58.877190" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.873789" elapsed="0.003426"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.877387" 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-08-10T02:08:58.852296" elapsed="0.025589"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.885591" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.885276" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.894802" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.896635" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:58.896922" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.885744" elapsed="0.011206"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.897377" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.897109" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.902426" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.897565" elapsed="0.006009"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.906146" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.903677" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.903650" elapsed="0.002600"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.928687" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:58.928735" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:58.906477" elapsed="0.022281"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:58.930566" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.928836" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.928818" elapsed="0.001828"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:58.930680" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:08:58.930871" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:58.930914" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.884903" elapsed="0.046034"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.933073" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.931501" elapsed="0.001617"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.931483" elapsed="0.001657"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.933704" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.933286" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.934253" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.933903" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.934346" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:08:58.934527" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.931152" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.934709" 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-08-10T02:08:58.884274" elapsed="0.050884"/>
</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-08-10T02:08:58.834579" elapsed="0.100635"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.827658" elapsed="0.107707"/>
</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-08-10T02:08:58.948621" 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-08-10T02:08:58.948807" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:58.948434" elapsed="0.000412"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:58.949591" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:58.949049" elapsed="0.000581"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.950226" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:58.949836" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.950836" 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-08-10T02:08:58.950487" elapsed="0.000387"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:58.951445" 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-08-10T02:08:58.951077" elapsed="0.000401"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:58.952501" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:58.951680" elapsed="0.000861"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.953195" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.952749" elapsed="0.000502"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.953978" 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-08-10T02:08:58.953547" elapsed="0.000488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.954649" 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-08-10T02:08:58.954223" elapsed="0.000478"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.955297" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:08:58.954902" elapsed="0.000481"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.955985" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:58.955580" elapsed="0.000462"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.956663" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec037010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:58.956237" elapsed="0.000481"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:08:58.947976" elapsed="0.008820"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.957527" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:08:58.957007" elapsed="0.000560"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.958119" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:08:58.957773" elapsed="0.000427"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.968772" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.968398" elapsed="0.000407"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:58.974616" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:58.975379" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:08:58.975504" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.968970" elapsed="0.006565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.976046" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.975739" elapsed="0.000362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.979439" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:58.976280" elapsed="0.003227"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:08:58.981486" elapsed="0.000037"/>
</return>
<status status="PASS" start="2026-08-10T02:08:58.979607" elapsed="0.001956"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.979577" elapsed="0.002012"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:08:58.981735" 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-08-10T02:08:58.982051" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:58.981902" elapsed="0.000202"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:08:58.981868" elapsed="0.000259"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.982159" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:08:58.984170" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:08:58.984232" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:08:58.967987" elapsed="0.016276"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:58.987398" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:58.985052" elapsed="0.002397"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:58.985028" elapsed="0.002445"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.988095" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.987647" elapsed="0.000478"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.988726" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:58.988311" elapsed="0.000445"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:58.988812" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:08:58.989009" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:58.984592" elapsed="0.004446"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:08:58.989220" 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-08-10T02:08:58.967251" elapsed="0.022515"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:08:58.999031" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:08:58.998671" elapsed="0.000391"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:59.005985" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:59.008223" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;pa... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:08:59.008591" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:08:58.999224" elapsed="0.009398"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.009105" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:59.008811" elapsed="0.000352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.014782" 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;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;442000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;14&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;16&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/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;16&lt;/second&gt;&lt;nanosecond&gt;949000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;443000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;15&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;18&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&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;17&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&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;19&lt;/second&gt;&lt;nanosecond&gt;954000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&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;20&lt;/second&gt;&lt;nanosecond&gt;450000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&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;19&lt;/second&gt;&lt;nanosecond&gt;452000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&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;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;21&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;20&lt;/second&gt;&lt;nanosecond&gt;955000000&lt;/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;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&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;21&lt;/second&gt;&lt;nanosecond&gt;456000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;962000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;460000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;424000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;464000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&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;27&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;465000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;967000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;429000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;425000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/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;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/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;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;28&lt;/second&gt;&lt;nanosecond&gt;971000000&lt;/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;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&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;13&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;474000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;431000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/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;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;30&lt;/second&gt;&lt;nanosecond&gt;511000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&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;11&lt;/second&gt;&lt;nanosecond&gt;435000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;932000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;434000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;940000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;438000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;939000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;439000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:59.009353" elapsed="0.006350"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:08:59.018327" elapsed="0.000049"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:59.015814" elapsed="0.002614"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:59.015784" elapsed="0.002676"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:08:59.039919" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:08:59.039968" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:08:59.018661" elapsed="0.021332"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:08:59.041811" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:08:59.040075" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:59.040055" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:08:59.041964" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:08:59.042179" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:08:59.042224" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:08:58.998214" elapsed="0.044033"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:08:59.044425" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:08:59.042836" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-08-10T02:08:59.042817" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.045058" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:59.044644" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.045624" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:08:59.045247" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:08:59.045700" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:08:59.045879" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:08:59.042496" 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-08-10T02:08:59.046080" 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-08-10T02:08:58.997446" elapsed="0.049126"/>
</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-08-10T02:08:58.943581" elapsed="0.103048"/>
</kw>
<status status="PASS" start="2026-08-10T02:08:58.935662" elapsed="0.111094"/>
</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-08-10T02:08:59.048062" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:59.047814" 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-08-10T02:08:59.051638" 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-08-10T02:08:59.051803" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:59.051488" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:59.052407" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab330&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:59.051983" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:59.052869" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:59.052588" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:59.053312" 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-08-10T02:08:59.053044" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:59.053776" 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-08-10T02:08:59.053508" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:59.054579" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:59.053967" elapsed="0.000643"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.055089" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:59.054769" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.055652" 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-08-10T02:08:59.055326" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.056156" 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-08-10T02:08:59.055845" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.056665" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:59.056362" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.057163" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:59.056859" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.057680" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab330&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:59.057374" 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-08-10T02:08:59.051120" elapsed="0.006656"/>
</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-08-10T02:08:59.059272" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec1a87c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:59.058787" elapsed="0.000513"/>
</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-08-10T02:08:59.059467" elapsed="0.000269"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:59.059891" elapsed="0.000237"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:59.060279" 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-08-10T02:08:59.060692" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:59.061458" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec1aa4d0&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-08-10T02:08:59.061174" 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-08-10T02:08:59.061634" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:59.062437" 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-08-10T02:08:59.062033" elapsed="0.000465"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:59.063021" 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-08-10T02:08:59.062643" elapsed="0.000409"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:08:59.512052" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:08:59.512286" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:08:59.512588" 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-08-10T02:08:59.063182" elapsed="0.449466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.517578" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:59.513044" elapsed="0.004636"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec1ab330&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-08-10T02:08:59.058431" elapsed="0.459383"/>
</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-08-10T02:08:59.057968" elapsed="0.459966"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-08-10T02:08:59.047686" elapsed="0.470327"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.519179" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:08:59.518624" elapsed="0.000654"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:08:59.524772" 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-08-10T02:08:59.524923" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:08:59.524627" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:08:59.525523" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e5440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:08:59.525103" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:59.525981" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:08:59.525705" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:59.526473" 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-08-10T02:08:59.526156" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:08:59.526918" 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-08-10T02:08:59.526648" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:08:59.527718" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:08:59.527092" elapsed="0.000657"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.528230" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:59.527907" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.528748" 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-08-10T02:08:59.528442" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.529247" 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-08-10T02:08:59.528937" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.529752" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:59.529454" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.530260" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:59.529944" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:08:59.530785" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e5440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:08:59.530477" 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-08-10T02:08:59.524261" elapsed="0.006621"/>
</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-08-10T02:08:59.532168" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e6a70&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:08:59.531845" elapsed="0.000350"/>
</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-08-10T02:08:59.532357" elapsed="0.000444"/>
</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-08-10T02:08:59.532954" elapsed="0.000237"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:08:59.533355" elapsed="0.000290"/>
</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-08-10T02:08:59.533794" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:08:59.534621" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec1a8400&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-08-10T02:08:59.534325" 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-08-10T02:08:59.534795" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:08:59.535551" 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-08-10T02:08:59.535184" elapsed="0.000427"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:08:59.536130" 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-08-10T02:08:59.535755" elapsed="0.000405"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:00.013234" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:00.013465" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:00.013745" 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-08-10T02:08:59.536289" elapsed="0.477520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.020207" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:00.016251" elapsed="0.004020"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec3e5440&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-08-10T02:08:59.531493" elapsed="0.488897"/>
</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-08-10T02:08:59.531032" elapsed="0.489437"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-08-10T02:08:59.518297" elapsed="0.502224"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.021240" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:00.020891" elapsed="0.000411"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:00.026162" 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-08-10T02:09:00.026487" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:00.025960" elapsed="0.000570"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:00.027211" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:00.026745" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:00.027694" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:00.027411" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:00.028244" 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-08-10T02:09:00.027967" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:00.028710" 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-08-10T02:09:00.028438" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:00.029530" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:00.028887" elapsed="0.000674"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.030055" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:00.029722" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.030602" 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-08-10T02:09:00.030248" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.031113" 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-08-10T02:09:00.030798" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.031621" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:00.031302" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.032119" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:00.031814" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.032647" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:00.032313" 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-08-10T02:09:00.025463" elapsed="0.007286"/>
</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-08-10T02:09:00.034023" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e4310&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:00.033701" elapsed="0.000350"/>
</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-08-10T02:09:00.034196" elapsed="0.000494"/>
</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-08-10T02:09:00.034847" 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-08-10T02:09:00.035237" 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-08-10T02:09:00.035649" elapsed="0.000336"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:00.036458" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3e6610&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-08-10T02:09:00.036136" 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-08-10T02:09:00.036632" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:00.037395" 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-08-10T02:09:00.037023" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:00.037977" 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-08-10T02:09:00.037605" elapsed="0.000403"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:00.514272" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:00.514638" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:00.514968" 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-08-10T02:09:00.038138" elapsed="0.476891"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.520107" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:00.515540" elapsed="0.004665"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec3e4400&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-08-10T02:09:00.033327" elapsed="0.487049"/>
</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-08-10T02:09:00.032897" elapsed="0.487603"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-08-10T02:09:00.020698" elapsed="0.499883"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.521798" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:00.521119" elapsed="0.000785"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:00.526089" 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-08-10T02:09:00.526257" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:00.525938" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:00.526957" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:00.526464" elapsed="0.000527"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:00.527468" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:00.527161" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:00.527912" 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-08-10T02:09:00.527645" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:00.528369" 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-08-10T02:09:00.528086" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:00.529216" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:00.528547" elapsed="0.000699"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.529758" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:00.529423" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.530256" 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-08-10T02:09:00.529954" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.530821" 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-08-10T02:09:00.530461" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.531369" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:00.531048" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.531868" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:00.531563" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:00.532384" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:00.532061" 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-08-10T02:09:00.525556" elapsed="0.006924"/>
</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-08-10T02:09:00.533957" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec36a1b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:00.533436" elapsed="0.000548"/>
</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-08-10T02:09:00.534131" 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-08-10T02:09:00.534572" 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-08-10T02:09:00.535029" elapsed="0.000330"/>
</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-08-10T02:09:00.535513" elapsed="0.000343"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:00.536273" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3e63e0&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-08-10T02:09:00.536008" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:00.536464" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:00.537228" 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-08-10T02:09:00.536862" elapsed="0.000427"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:00.537838" 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-08-10T02:09:00.537453" elapsed="0.000416"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:01.015423" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:01.015646" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:01.015913" 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-08-10T02:09:00.537999" elapsed="0.477974"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.020762" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:01.016476" elapsed="0.004352"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec3e4770&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-08-10T02:09:00.533062" elapsed="0.487861"/>
</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-08-10T02:09:00.532629" elapsed="0.488376"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-08-10T02:09:00.520832" elapsed="0.500226"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.021817" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:01.021448" elapsed="0.000434"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:01.026136" 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-08-10T02:09:01.026305" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:01.025986" elapsed="0.000365"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:01.026956" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368b80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:01.026506" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:01.027572" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:01.027244" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:01.028029" 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-08-10T02:09:01.027752" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:01.028491" 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-08-10T02:09:01.028204" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:01.029384" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:01.028669" elapsed="0.000747"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.029908" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:01.029576" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.030425" 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-08-10T02:09:01.030103" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.030925" 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-08-10T02:09:01.030616" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.031539" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:01.031190" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.032040" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:01.031735" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.032556" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368b80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:01.032233" 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-08-10T02:09:01.025617" elapsed="0.007035"/>
</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-08-10T02:09:01.034123" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec368770&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:01.033605" elapsed="0.000546"/>
</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-08-10T02:09:01.034295" 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-08-10T02:09:01.034729" 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-08-10T02:09:01.035161" elapsed="0.000309"/>
</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-08-10T02:09:01.035622" elapsed="0.000340"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:01.036401" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec369bc0&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-08-10T02:09:01.036114" 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-08-10T02:09:01.036575" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:01.037356" 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-08-10T02:09:01.036966" elapsed="0.000455"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:01.038003" 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-08-10T02:09:01.037606" elapsed="0.000428"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:01.516200" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:01.516434" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:01.516707" 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-08-10T02:09:01.038162" elapsed="0.478607"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.521895" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:01.517224" elapsed="0.004773"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec368b80&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-08-10T02:09:01.033234" elapsed="0.488905"/>
</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-08-10T02:09:01.032799" elapsed="0.489458"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-08-10T02:09:01.021232" elapsed="0.501150"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.523753" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:01.522940" 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-08-10T02:09:01.528898" 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-08-10T02:09:01.529117" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:01.528694" elapsed="0.000463"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:01.529989" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d91c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:01.529392" elapsed="0.000636"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:01.530662" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:01.530239" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:01.531318" 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-08-10T02:09:01.530909" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:01.531983" 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-08-10T02:09:01.531587" elapsed="0.000439"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:01.532902" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:01.532195" elapsed="0.000738"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.533438" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:01.533094" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.533936" 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-08-10T02:09:01.533632" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.534451" 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-08-10T02:09:01.534128" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.534999" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:01.534699" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.535526" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:01.535203" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:01.536024" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d91c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:01.535720" 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-08-10T02:09:01.528167" elapsed="0.007953"/>
</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-08-10T02:09:01.537604" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0dae30&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:01.537247" elapsed="0.000385"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:01.537777" 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-08-10T02:09:01.538196" elapsed="0.000253"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:01.538597" 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-08-10T02:09:01.538988" elapsed="0.000383"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:01.539791" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0d8860&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-08-10T02:09:01.539525" 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-08-10T02:09:01.539966" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:01.540740" 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-08-10T02:09:01.540372" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:01.541353" 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-08-10T02:09:01.540947" elapsed="0.000438"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:02.016917" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:02.017102" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:02.017490" 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-08-10T02:09:01.541520" elapsed="0.476034"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.021657" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:02.017998" elapsed="0.003721"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec0d91c0&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-08-10T02:09:01.536715" elapsed="0.485096"/>
</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-08-10T02:09:01.536266" elapsed="0.485622"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-08-10T02:09:01.522647" elapsed="0.499293"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.022661" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:02.022285" 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-08-10T02:09:02.027586" 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-08-10T02:09:02.027785" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:02.027368" elapsed="0.000458"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:02.028673" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db290&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:02.028040" elapsed="0.000672"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:02.029310" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:02.028924" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:02.029953" 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-08-10T02:09:02.029581" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:02.030590" 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-08-10T02:09:02.030193" elapsed="0.000433"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:02.031915" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:02.030832" elapsed="0.001135"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.032519" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:02.032174" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.033017" 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-08-10T02:09:02.032713" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.033530" 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-08-10T02:09:02.033204" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.034016" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:02.033720" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.034697" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:02.034208" elapsed="0.000536"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.035200" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0db290&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:02.034895" 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-08-10T02:09:02.026853" elapsed="0.008442"/>
</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-08-10T02:09:02.036626" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0dab10&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:02.036257" 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-08-10T02:09:02.036799" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:02.037210" elapsed="0.000253"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:02.037611" 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-08-10T02:09:02.038041" elapsed="0.000353"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:02.038809" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0d8f40&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-08-10T02:09:02.038545" 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-08-10T02:09:02.038986" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:02.039837" 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-08-10T02:09:02.039390" elapsed="0.000515"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:02.040493" 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-08-10T02:09:02.040051" elapsed="0.000473"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:02.518432" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:02.518642" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:02.518933" 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-08-10T02:09:02.040655" elapsed="0.478341"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.524307" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:02.519547" elapsed="0.004892"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec0db290&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-08-10T02:09:02.035897" elapsed="0.488685"/>
</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-08-10T02:09:02.035470" elapsed="0.489235"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-08-10T02:09:02.022102" elapsed="0.502684"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.525935" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:02.525374" elapsed="0.000664"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:02.530752" 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-08-10T02:09:02.530934" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:02.530601" elapsed="0.000431"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:02.531685" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee46b2e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:02.531190" elapsed="0.000536"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:02.532168" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:02.531882" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:02.532651" 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-08-10T02:09:02.532379" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:02.533097" 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-08-10T02:09:02.532827" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:02.534346" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:02.533273" elapsed="0.001106"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.534882" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:02.534545" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.535399" 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-08-10T02:09:02.535074" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.535911" 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-08-10T02:09:02.535590" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.536413" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:02.536100" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.536911" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:02.536608" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:02.537422" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee46b2e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:02.537103" 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-08-10T02:09:02.530197" elapsed="0.007322"/>
</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-08-10T02:09:02.538823" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0d9a30&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:02.538470" elapsed="0.000381"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:02.538994" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:02.539425" 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-08-10T02:09:02.539839" 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-08-10T02:09:02.540234" elapsed="0.000353"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:02.541002" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dff32c00&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-08-10T02:09:02.540739" elapsed="0.000289"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:02.541172" elapsed="0.000258"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:02.541989" 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-08-10T02:09:02.541579" elapsed="0.000513"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:02.542677" 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-08-10T02:09:02.542238" elapsed="0.000469"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:03.019522" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:03.019724" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:03.020067" 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-08-10T02:09:02.542838" elapsed="0.477293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.025312" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:03.020646" elapsed="0.004798"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ee46b2e0&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-08-10T02:09:02.538098" elapsed="0.487489"/>
</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-08-10T02:09:02.537666" elapsed="0.488038"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-08-10T02:09:02.525050" elapsed="0.500733"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.026916" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:03.026324" elapsed="0.000690"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:03.031731" 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-08-10T02:09:03.031900" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:03.031577" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:03.032575" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff331f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:03.032104" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:03.033039" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:03.032757" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:03.033506" 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-08-10T02:09:03.033215" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:03.033948" 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-08-10T02:09:03.033681" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:03.035100" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:03.034127" elapsed="0.001004"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.035640" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:03.035292" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.036156" 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-08-10T02:09:03.035834" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.036732" 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-08-10T02:09:03.036417" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.037223" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:03.036923" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.037738" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:03.037433" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.038235" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff331f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:03.037931" 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-08-10T02:09:03.031192" elapsed="0.007155"/>
</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-08-10T02:09:03.039650" level="INFO">${req} = &lt;Element 'flow' at 0x7777dff32b60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:03.039278" 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-08-10T02:09:03.039822" elapsed="0.000313"/>
</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-08-10T02:09:03.040290" 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-08-10T02:09:03.040713" 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-08-10T02:09:03.041103" elapsed="0.000353"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:03.041873" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dff334c0&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-08-10T02:09:03.041608" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:03.042045" elapsed="0.000240"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:03.042850" 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-08-10T02:09:03.042449" elapsed="0.000467"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:03.043500" 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-08-10T02:09:03.043061" elapsed="0.000470"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:03.521140" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:03.521467" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:03.521768" 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-08-10T02:09:03.043659" elapsed="0.478171"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.526852" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:03.522251" elapsed="0.004699"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dff331f0&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-08-10T02:09:03.038928" elapsed="0.488156"/>
</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-08-10T02:09:03.038499" elapsed="0.488702"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-08-10T02:09:03.026030" elapsed="0.501248"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.528443" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:03.527851" 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-08-10T02:09:03.532930" 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-08-10T02:09:03.533081" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:03.532784" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:03.533738" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:03.533272" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:03.534202" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:03.533920" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:03.534663" 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-08-10T02:09:03.534395" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:03.535108" 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-08-10T02:09:03.534837" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:03.536230" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:03.535280" elapsed="0.000981"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.536765" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:03.536438" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.537275" 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-08-10T02:09:03.536958" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.537809" 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-08-10T02:09:03.537492" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.538296" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:03.537999" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.538808" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:03.538505" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:03.539302" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:03.539002" 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-08-10T02:09:03.532432" elapsed="0.006982"/>
</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-08-10T02:09:03.540700" level="INFO">${req} = &lt;Element 'flow' at 0x7777dff32070&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:03.540351" 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-08-10T02:09:03.540870" 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-08-10T02:09:03.541342" elapsed="0.000237"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:03.541725" elapsed="0.000281"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:03.542156" elapsed="0.000354"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:03.542926" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecb8ac00&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-08-10T02:09:03.542662" 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-08-10T02:09:03.543097" elapsed="0.000257"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:03.543891" 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-08-10T02:09:03.543501" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:03.544529" 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-08-10T02:09:03.544100" elapsed="0.000460"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:04.022675" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:04.022878" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:04.023181" 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-08-10T02:09:03.544690" elapsed="0.478551"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.028506" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:04.023760" elapsed="0.004846"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfda0720&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-08-10T02:09:03.539985" elapsed="0.488759"/>
</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-08-10T02:09:03.539561" elapsed="0.489327"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-08-10T02:09:03.527559" elapsed="0.501409"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.030146" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:04.029587" elapsed="0.000658"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:04.037533" 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-08-10T02:09:04.037945" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:04.037379" elapsed="0.000596"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:04.038615" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:04.038128" elapsed="0.000515"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:04.039162" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:04.038798" elapsed="0.000390"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:04.039628" 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-08-10T02:09:04.039355" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:04.040283" 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-08-10T02:09:04.039803" elapsed="0.000507"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:04.041267" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:04.040495" elapsed="0.000803"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.041932" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:04.041510" elapsed="0.000467"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.042462" 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-08-10T02:09:04.042129" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.042963" 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-08-10T02:09:04.042655" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.043474" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:04.043159" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.043969" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:04.043667" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.044508" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:04.044173" 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-08-10T02:09:04.036973" elapsed="0.007630"/>
</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-08-10T02:09:04.045913" level="INFO">${req} = &lt;Element 'flow' at 0x7777dff31f30&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:04.045556" elapsed="0.000385"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:04.046084" elapsed="0.000281"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:04.046518" 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-08-10T02:09:04.046899" elapsed="0.000238"/>
</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-08-10T02:09:04.047284" elapsed="0.000356"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:04.048083" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda3b50&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-08-10T02:09:04.047792" 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-08-10T02:09:04.048258" elapsed="0.000273"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:04.049088" 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-08-10T02:09:04.048679" elapsed="0.000521"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:04.049783" 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-08-10T02:09:04.049365" elapsed="0.000449"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:04.523960" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:04.524134" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:04.524433" 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-08-10T02:09:04.049943" elapsed="0.474554"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.532267" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:04.524948" elapsed="0.007454"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfda0ae0&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-08-10T02:09:04.045184" elapsed="0.487359"/>
</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-08-10T02:09:04.044755" elapsed="0.487959"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-08-10T02:09:04.029225" elapsed="0.503568"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.533419" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:04.533143" elapsed="0.000326"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:04.536940" 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-08-10T02:09:04.537099" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:04.536795" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:04.537761" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0180&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:04.537278" elapsed="0.000512"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:04.538230" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:04.537944" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:04.538703" 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-08-10T02:09:04.538426" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:04.539142" 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-08-10T02:09:04.538875" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:04.540089" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:04.539316" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.540636" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:04.540278" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.541144" 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-08-10T02:09:04.540830" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.541719" 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-08-10T02:09:04.541406" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.542207" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:04.541910" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.542721" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:04.542416" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:04.543219" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfda0180&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:04.542915" 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-08-10T02:09:04.536429" elapsed="0.006887"/>
</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-08-10T02:09:04.544695" level="INFO">${req} = &lt;Element 'flow' at 0x7777dff31d00&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:04.544316" elapsed="0.000407"/>
</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-08-10T02:09:04.544875" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:04.545289" 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-08-10T02:09:04.545690" 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-08-10T02:09:04.546079" elapsed="0.000494"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:04.546996" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda2c50&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-08-10T02:09:04.546726" 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-08-10T02:09:04.547176" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:04.547983" 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-08-10T02:09:04.547588" elapsed="0.000464"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:04.548662" 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-08-10T02:09:04.548210" elapsed="0.000482"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:05.025435" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:05.025741" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:05.026010" 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-08-10T02:09:04.548824" elapsed="0.477248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.031549" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:05.026571" elapsed="0.005078"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfda0180&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-08-10T02:09:04.543917" elapsed="0.487872"/>
</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-08-10T02:09:04.543483" elapsed="0.488424"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-08-10T02:09:04.533012" elapsed="0.498973"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.033117" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:05.032560" elapsed="0.000656"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:05.040064" 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-08-10T02:09:05.040229" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:05.039918" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:05.040877" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff331f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:05.040436" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:05.041357" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:05.041059" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:05.041808" 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-08-10T02:09:05.041538" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:05.042257" 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-08-10T02:09:05.041985" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:05.043169" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:05.042469" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.043707" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:05.043378" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.044209" 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-08-10T02:09:05.043907" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.044723" 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-08-10T02:09:05.044414" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.045209" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:05.044912" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.045721" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:05.045418" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.046228" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff331f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:05.045914" 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-08-10T02:09:05.039554" elapsed="0.006793"/>
</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-08-10T02:09:05.047644" level="INFO">${req} = &lt;Element 'flow' at 0x7777dff33970&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:05.047282" 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-08-10T02:09:05.047816" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:05.048232" 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-08-10T02:09:05.048630" elapsed="0.000465"/>
</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-08-10T02:09:05.049247" elapsed="0.000360"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:05.050052" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfda2e80&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-08-10T02:09:05.049760" 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-08-10T02:09:05.050227" elapsed="0.000272"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:05.051027" 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-08-10T02:09:05.050653" elapsed="0.000438"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:05.051649" 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-08-10T02:09:05.051234" elapsed="0.000445"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:05.526727" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:05.526914" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:05.527172" 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-08-10T02:09:05.051808" elapsed="0.475425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.532301" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:05.527727" elapsed="0.004707"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dff331f0&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-08-10T02:09:05.046931" elapsed="0.485640"/>
</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-08-10T02:09:05.046504" elapsed="0.486185"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-08-10T02:09:05.032229" elapsed="0.500537"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.533952" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:05.533384" 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-08-10T02:09:05.539012" 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-08-10T02:09:05.539224" 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-08-10T02:09:05.538810" elapsed="0.000540"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:05.540169" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff315d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:05.539572" elapsed="0.000636"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:05.540843" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:05.540446" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:05.541544" 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-08-10T02:09:05.541108" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:05.542175" 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-08-10T02:09:05.541798" elapsed="0.000413"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:05.543432" 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-08-10T02:09:05.542443" elapsed="0.001033"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.544148" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:05.543698" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.544872" 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-08-10T02:09:05.544442" elapsed="0.000522"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.545654" 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-08-10T02:09:05.545177" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.546357" 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-08-10T02:09:05.545929" elapsed="0.000474"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.546856" 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-08-10T02:09:05.546553" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:05.547374" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff315d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:05.547049" 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-08-10T02:09:05.538298" elapsed="0.009173"/>
</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-08-10T02:09:05.548769" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0dbab0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:05.548422" 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-08-10T02:09:05.548965" elapsed="0.000479"/>
</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-08-10T02:09:05.549600" 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-08-10T02:09:05.549994" elapsed="0.000250"/>
</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-08-10T02:09:05.550419" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:05.551177" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dff33b00&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-08-10T02:09:05.550910" 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-08-10T02:09:05.551366" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:05.552140" 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-08-10T02:09:05.551763" elapsed="0.000477"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:05.552817" 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-08-10T02:09:05.552405" elapsed="0.000443"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:06.027940" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:06.028123" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:06.028415" 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-08-10T02:09:05.552979" elapsed="0.475502"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.033773" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:06.028938" elapsed="0.004936"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dff315d0&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-08-10T02:09:05.548050" elapsed="0.485963"/>
</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-08-10T02:09:05.547619" elapsed="0.486515"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-08-10T02:09:05.533012" elapsed="0.501200"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.035386" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:06.034788" 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-08-10T02:09:06.040461" 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-08-10T02:09:06.040622" 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-08-10T02:09:06.040284" elapsed="0.000367"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:06.041240" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d8b30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:06.040804" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:06.041741" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:06.041456" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:06.042189" 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-08-10T02:09:06.041918" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:06.042650" 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-08-10T02:09:06.042382" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:06.043531" 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-08-10T02:09:06.042826" elapsed="0.000737"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.044060" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:06.043725" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.044624" 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-08-10T02:09:06.044283" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.045191" 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-08-10T02:09:06.044818" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.045743" 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-08-10T02:09:06.045438" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.046239" 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-08-10T02:09:06.045937" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.046754" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0d8b30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:06.046451" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:06.039924" elapsed="0.006924"/>
</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-08-10T02:09:06.048311" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0d9e40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:06.047795" elapsed="0.000560"/>
</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-08-10T02:09:06.048502" 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-08-10T02:09:06.048920" 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-08-10T02:09:06.049355" 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-08-10T02:09:06.049746" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:06.050510" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0db060&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-08-10T02:09:06.050228" 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-08-10T02:09:06.050681" elapsed="0.000240"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:06.051462" 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-08-10T02:09:06.051071" elapsed="0.000459"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:06.052065" 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-08-10T02:09:06.051673" elapsed="0.000423"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:06.529590" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:06.529916" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:06.530194" 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-08-10T02:09:06.052224" elapsed="0.478032"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.535615" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:06.530793" elapsed="0.004926"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec0d8b30&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-08-10T02:09:06.047443" elapsed="0.488417"/>
</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-08-10T02:09:06.046995" elapsed="0.488983"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-08-10T02:09:06.034497" elapsed="0.501559"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.537192" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:06.536633" elapsed="0.000658"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:06.541964" 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-08-10T02:09:06.542129" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:06.541815" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:06.542763" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368c70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:06.542315" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:06.543233" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:06.542947" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:06.543703" 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-08-10T02:09:06.543431" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:06.544151" 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-08-10T02:09:06.543881" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:06.544954" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:06.544328" elapsed="0.000657"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.545488" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:06.545143" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.545990" 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-08-10T02:09:06.545683" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.546541" 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-08-10T02:09:06.546186" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.547033" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:06.546733" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.547552" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:06.547227" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:06.548048" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368c70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:06.547745" 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-08-10T02:09:06.541436" elapsed="0.006707"/>
</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-08-10T02:09:06.549607" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec36bd80&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:06.549087" elapsed="0.000548"/>
</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-08-10T02:09:06.549781" elapsed="0.000269"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:06.550226" 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-08-10T02:09:06.550708" elapsed="0.000250"/>
</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-08-10T02:09:06.551119" elapsed="0.000390"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:06.551951" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec368310&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-08-10T02:09:06.551676" 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-08-10T02:09:06.552124" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:06.552891" 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-08-10T02:09:06.552540" elapsed="0.000413"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:06.553491" 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-08-10T02:09:06.553097" elapsed="0.000424"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:07.030661" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:07.030876" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:07.031192" 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-08-10T02:09:06.553651" elapsed="0.477618"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.037264" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:07.031817" elapsed="0.005541"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec368c70&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-08-10T02:09:06.548734" elapsed="0.488722"/>
</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-08-10T02:09:06.548289" elapsed="0.489245"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-08-10T02:09:06.536306" elapsed="0.501279"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.038298" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:07.037938" 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-08-10T02:09:07.043276" 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-08-10T02:09:07.043527" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:07.043070" elapsed="0.000500"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:07.044403" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:07.043788" elapsed="0.000658"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:07.045081" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:07.044678" elapsed="0.000512"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:07.045828" 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-08-10T02:09:07.045435" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:07.046497" 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-08-10T02:09:07.046081" elapsed="0.000456"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:07.047598" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:07.046751" elapsed="0.000893"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.048360" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:07.047869" elapsed="0.000604"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.049125" 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-08-10T02:09:07.048700" elapsed="0.000469"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.049668" 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-08-10T02:09:07.049323" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.050177" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:07.049866" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.050711" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:07.050395" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.051237" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:07.050910" 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-08-10T02:09:07.042565" elapsed="0.008791"/>
</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-08-10T02:09:07.052685" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e63e0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:07.052317" elapsed="0.000398"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:07.053038" 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-08-10T02:09:07.053489" 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-08-10T02:09:07.053883" 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-08-10T02:09:07.054283" elapsed="0.000362"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:07.055067" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0347c0&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-08-10T02:09:07.054798" 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-08-10T02:09:07.055243" elapsed="0.000267"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:07.056009" 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-08-10T02:09:07.055660" elapsed="0.000411"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:07.056645" 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-08-10T02:09:07.056216" elapsed="0.000460"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:07.531139" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:07.531311" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:07.531626" 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-08-10T02:09:07.056842" elapsed="0.474846"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.536780" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:07.532146" elapsed="0.004733"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec035850&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-08-10T02:09:07.051955" elapsed="0.485057"/>
</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-08-10T02:09:07.051510" elapsed="0.485622"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-08-10T02:09:07.037752" elapsed="0.499460"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.538381" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:07.537785" elapsed="0.000701"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:07.542965" 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-08-10T02:09:07.543122" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:07.542820" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:07.543745" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:07.543305" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:07.544213" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:07.543926" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:07.544680" 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-08-10T02:09:07.544410" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:07.545129" 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-08-10T02:09:07.544857" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:07.545903" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:07.545305" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.546436" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:07.546094" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.546936" 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-08-10T02:09:07.546630" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.547454" 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-08-10T02:09:07.547126" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.547959" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:07.547657" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.548478" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:07.548154" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:07.549031" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:07.548725" 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-08-10T02:09:07.542466" elapsed="0.006661"/>
</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-08-10T02:09:07.550421" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e49a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:07.550081" elapsed="0.000368"/>
</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-08-10T02:09:07.550598" elapsed="0.000441"/>
</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-08-10T02:09:07.551192" 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-08-10T02:09:07.551628" 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-08-10T02:09:07.552025" elapsed="0.000353"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:07.552797" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3e4450&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-08-10T02:09:07.552529" 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-08-10T02:09:07.552969" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:07.553717" 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-08-10T02:09:07.553373" elapsed="0.000405"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:07.554293" 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-08-10T02:09:07.553921" elapsed="0.000402"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:08.032158" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:08.032386" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:08.032670" 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-08-10T02:09:07.554469" elapsed="0.478263"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.037863" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:08.033202" elapsed="0.004759"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec3e4400&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-08-10T02:09:07.549729" elapsed="0.488368"/>
</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-08-10T02:09:07.549275" elapsed="0.488944"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-08-10T02:09:07.537495" elapsed="0.500803"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.039497" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:08.038868" 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-08-10T02:09:08.043581" 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-08-10T02:09:08.043740" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:08.043433" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:08.044392" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4c20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:08.043921" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:08.044854" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:08.044573" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:08.045298" 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-08-10T02:09:08.045031" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:08.045755" 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-08-10T02:09:08.045489" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:08.046672" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:08.045929" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.047188" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:08.046862" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.047717" 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-08-10T02:09:08.047399" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.048216" 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-08-10T02:09:08.047906" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.048719" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:08.048421" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.049215" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:08.048912" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.049729" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4c20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:08.049426" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:08.043056" elapsed="0.006768"/>
</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-08-10T02:09:08.051536" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3e4720&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:08.050847" elapsed="0.000719"/>
</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-08-10T02:09:08.051738" 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-08-10T02:09:08.052218" 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-08-10T02:09:08.052650" 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-08-10T02:09:08.053067" elapsed="0.000366"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:08.053861" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec1a8950&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-08-10T02:09:08.053586" 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-08-10T02:09:08.054041" elapsed="0.000253"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:08.054855" 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-08-10T02:09:08.054462" elapsed="0.000501"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:08.055578" 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-08-10T02:09:08.055114" elapsed="0.000496"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:08.533926" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:08.534114" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:08.534430" 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-08-10T02:09:08.055753" elapsed="0.478747"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.539572" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:08.534948" elapsed="0.004725"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec3e4c20&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-08-10T02:09:08.050428" elapsed="0.489383"/>
</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-08-10T02:09:08.049970" elapsed="0.489963"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-08-10T02:09:08.038578" elapsed="0.501437"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.541392" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:08.540610" elapsed="0.000904"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:08.547096" 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-08-10T02:09:08.547259" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:08.546949" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:08.547902" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d5d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:08.547460" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:08.548409" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:08.548087" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:08.548872" 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-08-10T02:09:08.548597" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:08.549317" 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-08-10T02:09:08.549048" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:08.550229" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:08.549511" elapsed="0.000749"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.550821" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:08.550467" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.551325" 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-08-10T02:09:08.551016" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.551904" 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-08-10T02:09:08.551591" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.552427" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:08.552093" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.552922" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:08.552621" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:08.553434" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d5d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:08.553115" 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-08-10T02:09:08.546591" elapsed="0.006940"/>
</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-08-10T02:09:08.555024" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec21ea20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:08.554677" 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-08-10T02:09:08.555198" elapsed="0.000281"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:08.555632" 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-08-10T02:09:08.556014" elapsed="0.000266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:08.556462" elapsed="0.000341"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:08.557219" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec21c630&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-08-10T02:09:08.556955" elapsed="0.000290"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:08.557407" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:08.558169" 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-08-10T02:09:08.557793" elapsed="0.000440"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:08.558795" 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-08-10T02:09:08.558391" elapsed="0.000433"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:09.035076" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:09.035400" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:09.035665" 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-08-10T02:09:08.558953" elapsed="0.476775"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.040795" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:09.036175" elapsed="0.004723"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec21d5d0&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-08-10T02:09:08.554299" elapsed="0.486739"/>
</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-08-10T02:09:08.553678" elapsed="0.487482"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-08-10T02:09:08.540254" elapsed="0.500986"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.042542" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:09.041817" elapsed="0.000857"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:09.048809" 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-08-10T02:09:09.048970" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:09.048663" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:09.049620" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d3a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:09.049152" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:09.052662" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:09.049800" elapsed="0.002890"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:09.053110" 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-08-10T02:09:09.052842" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:09.053606" 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-08-10T02:09:09.053288" elapsed="0.000345"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:09.054597" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:09.053799" elapsed="0.000829"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.055112" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:09.054788" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.055810" 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-08-10T02:09:09.055302" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.056323" 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-08-10T02:09:09.056005" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.056828" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:09.056532" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.057322" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:09.057020" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.057866" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d3a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:09.057541" 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-08-10T02:09:09.048285" elapsed="0.009677"/>
</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-08-10T02:09:09.059263" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec21f970&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:09.058910" 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-08-10T02:09:09.059452" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:09.059866" 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-08-10T02:09:09.060295" 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-08-10T02:09:09.060708" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:09.061473" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec1a8d60&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-08-10T02:09:09.061190" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:09.061674" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:09.062472" 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-08-10T02:09:09.062064" elapsed="0.000475"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:09.063094" 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-08-10T02:09:09.062683" elapsed="0.000442"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:09.537026" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:09.537319" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:09.537769" 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-08-10T02:09:09.063253" elapsed="0.474582"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.543543" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:09.538518" elapsed="0.005125"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec21d3a0&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-08-10T02:09:09.058561" elapsed="0.485235"/>
</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-08-10T02:09:09.058109" elapsed="0.485817"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-08-10T02:09:09.041522" elapsed="0.502491"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.545183" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:09.544707" elapsed="0.000544"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:09.550170" 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-08-10T02:09:09.551170" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:09.550004" elapsed="0.001297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:09.553367" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:09.552007" elapsed="0.001435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:09.554552" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:09.553825" elapsed="0.000786"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:09.555591" 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-08-10T02:09:09.554951" elapsed="0.000697"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:09.556706" 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-08-10T02:09:09.555988" elapsed="0.000777"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:09.558508" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:09.557106" elapsed="0.001472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.559760" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:09.558951" elapsed="0.000907"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.560983" 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-08-10T02:09:09.560253" elapsed="0.000821"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.561832" 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-08-10T02:09:09.561316" elapsed="0.000574"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.562556" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:09.562100" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.563744" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:09.562832" elapsed="0.000978"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:09.564496" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21d350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:09.564039" elapsed="0.000519"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:09.549573" elapsed="0.015085"/>
</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-08-10T02:09:09.566673" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec21d7b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:09.566177" elapsed="0.000535"/>
</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-08-10T02:09:09.566916" elapsed="0.000377"/>
</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-08-10T02:09:09.567530" elapsed="0.000347"/>
</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-08-10T02:09:09.568085" elapsed="0.000364"/>
</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-08-10T02:09:09.568658" elapsed="0.000480"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:09.569746" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec21fd80&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-08-10T02:09:09.569374" 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-08-10T02:09:09.569993" elapsed="0.000338"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:09.571056" 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-08-10T02:09:09.570562" elapsed="0.000668"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:09.572019" 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-08-10T02:09:09.571459" elapsed="0.000604"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:10.037582" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:10.037713" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:10.037929" 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-08-10T02:09:09.572270" elapsed="0.465699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.041254" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:10.038298" elapsed="0.003018"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec21d350&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-08-10T02:09:09.565604" elapsed="0.475827"/>
</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-08-10T02:09:09.564881" elapsed="0.476626"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-08-10T02:09:09.544404" elapsed="0.497155"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.042254" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:10.041905" elapsed="0.000411"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:10.047248" 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-08-10T02:09:10.047515" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:10.046992" elapsed="0.000564"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:10.048388" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21ee80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:10.047768" elapsed="0.000649"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:10.048859" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:10.048573" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:10.049309" 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-08-10T02:09:10.049038" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:10.049775" 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-08-10T02:09:10.049505" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:10.050741" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:10.049951" elapsed="0.000822"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.052686" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:10.050933" elapsed="0.001798"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.053202" 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-08-10T02:09:10.052887" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.053726" 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-08-10T02:09:10.053412" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.054214" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:10.053916" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.054799" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:10.054486" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.055360" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec21ee80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:10.055014" 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-08-10T02:09:10.046496" elapsed="0.008967"/>
</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-08-10T02:09:10.056773" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec1a8590&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:10.056417" 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-08-10T02:09:10.056945" 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-08-10T02:09:10.057378" 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-08-10T02:09:10.057766" 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-08-10T02:09:10.058216" elapsed="0.000454"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:10.059181" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec1a8400&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-08-10T02:09:10.058897" 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-08-10T02:09:10.059377" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:10.060160" 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-08-10T02:09:10.059769" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:10.060806" 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-08-10T02:09:10.060388" elapsed="0.000449"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:10.544452" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:10.544768" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:10.545062" 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-08-10T02:09:10.060966" elapsed="0.484159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.550259" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:10.545619" elapsed="0.004775"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec21ee80&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-08-10T02:09:10.056046" elapsed="0.494492"/>
</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-08-10T02:09:10.055614" elapsed="0.495083"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-08-10T02:09:10.041724" elapsed="0.509054"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.551913" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:10.551319" elapsed="0.000694"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:10.557577" 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-08-10T02:09:10.557746" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:10.557426" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:10.558474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e61b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:10.557976" elapsed="0.000528"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:10.558941" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:10.558659" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:10.559406" 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-08-10T02:09:10.559118" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:10.559850" 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-08-10T02:09:10.559582" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:10.560720" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:10.560025" elapsed="0.000726"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.561240" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:10.560914" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.561762" 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-08-10T02:09:10.561456" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.562256" 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-08-10T02:09:10.561951" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.616273" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:10.562489" elapsed="0.053880"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.617007" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:10.616608" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:10.617557" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e61b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:10.617205" 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-08-10T02:09:10.557043" elapsed="0.060620"/>
</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-08-10T02:09:10.619054" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec341440&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:10.618698" elapsed="0.000384"/>
</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-08-10T02:09:10.619227" 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-08-10T02:09:10.619667" 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-08-10T02:09:10.620049" elapsed="0.000400"/>
</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-08-10T02:09:10.620598" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:10.621388" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec341ee0&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-08-10T02:09:10.621106" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:10.621573" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:10.622354" 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-08-10T02:09:10.621965" elapsed="0.000452"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:10.622941" 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-08-10T02:09:10.622561" elapsed="0.000411"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:11.040028" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:11.040217" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:11.040572" 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-08-10T02:09:10.623108" elapsed="0.417529"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.044771" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:11.041116" elapsed="0.003718"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec3e61b0&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-08-10T02:09:10.618288" elapsed="0.426635"/>
</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-08-10T02:09:10.617817" elapsed="0.427184"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-08-10T02:09:10.551030" elapsed="0.494021"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.045772" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:11.045423" 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-08-10T02:09:11.050703" 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-08-10T02:09:11.050925" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:11.050467" elapsed="0.000498"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:11.051811" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e0c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:11.051191" elapsed="0.000660"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:11.052478" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:11.052062" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:11.053173" 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-08-10T02:09:11.052797" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:11.053814" 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-08-10T02:09:11.053439" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:11.055189" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:11.054058" elapsed="0.001177"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.055745" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:11.055415" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.056241" 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-08-10T02:09:11.055937" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.056755" 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-08-10T02:09:11.056446" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.057241" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:11.056942" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.057754" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:11.057450" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.058252" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9e0c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:11.057947" 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-08-10T02:09:11.049952" elapsed="0.008413"/>
</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-08-10T02:09:11.059831" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec342070&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:11.059495" elapsed="0.000363"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:11.060002" 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-08-10T02:09:11.060451" 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-08-10T02:09:11.060834" elapsed="0.000239"/>
</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-08-10T02:09:11.061219" elapsed="0.000420"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:11.062125" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec340f90&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-08-10T02:09:11.061815" elapsed="0.000358"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:11.062369" elapsed="0.000314"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:11.063281" 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-08-10T02:09:11.062856" elapsed="0.000519"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:11.064014" 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-08-10T02:09:11.063549" elapsed="0.000508"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:11.546117" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:11.546288" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:11.546617" 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-08-10T02:09:11.064288" elapsed="0.482393"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.550423" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:11.547117" elapsed="0.003369"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfc9e0c0&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-08-10T02:09:11.058953" elapsed="0.491621"/>
</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-08-10T02:09:11.058527" elapsed="0.492124"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-08-10T02:09:11.045216" elapsed="0.505486"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.551453" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:11.551045" 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-08-10T02:09:11.556653" 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-08-10T02:09:11.556910" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:11.556420" elapsed="0.000533"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:11.557777" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f2e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:11.557170" elapsed="0.000648"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:11.558451" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:11.558034" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:11.559289" 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-08-10T02:09:11.558772" elapsed="0.000594"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:11.559976" 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-08-10T02:09:11.559592" elapsed="0.000422"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:11.561199" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:11.560254" elapsed="0.000991"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.561803" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:11.561465" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.562303" 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-08-10T02:09:11.561997" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.562823" 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-08-10T02:09:11.562515" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.563434" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:11.563016" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.564027" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:11.563716" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:11.564559" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f2e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:11.564228" 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-08-10T02:09:11.555869" elapsed="0.008785"/>
</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-08-10T02:09:11.566074" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3405e0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:11.565738" elapsed="0.000364"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:11.566248" 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-08-10T02:09:11.566685" 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-08-10T02:09:11.567068" elapsed="0.003366"/>
</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-08-10T02:09:11.570589" elapsed="0.000337"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:11.571437" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3415d0&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-08-10T02:09:11.571114" 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-08-10T02:09:11.571644" elapsed="0.000297"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:11.572474" 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-08-10T02:09:11.572092" elapsed="0.000445"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:11.573071" 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-08-10T02:09:11.572685" elapsed="0.000416"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:12.047523" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:12.047724" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:12.048044" 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-08-10T02:09:11.573231" elapsed="0.474875"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.053320" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:12.048659" elapsed="0.004795"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfc9f2e0&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-08-10T02:09:11.565283" elapsed="0.488441"/>
</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-08-10T02:09:11.564802" elapsed="0.489047"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-08-10T02:09:11.550865" elapsed="0.503063"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.055060" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:12.054506" elapsed="0.000652"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:12.059866" 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-08-10T02:09:12.060039" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:12.059717" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:12.060721" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9da80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:12.060222" elapsed="0.000528"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:12.061188" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:12.060905" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:12.061656" 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-08-10T02:09:12.061387" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:12.062100" 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-08-10T02:09:12.061833" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:12.063227" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:12.062279" elapsed="0.000979"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.063773" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:12.063438" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.064281" 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-08-10T02:09:12.063964" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.064809" 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-08-10T02:09:12.064499" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.065299" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:12.064996" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.065811" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:12.065509" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.066305" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9da80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:12.066004" 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-08-10T02:09:12.059330" elapsed="0.007090"/>
</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-08-10T02:09:12.067701" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec341c60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:12.067360" elapsed="0.000368"/>
</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-08-10T02:09:12.067874" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:12.068346" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:12.068732" 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-08-10T02:09:12.069121" elapsed="0.000349"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:12.069884" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9f420&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-08-10T02:09:12.069622" elapsed="0.000289"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:12.070093" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:12.070883" 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-08-10T02:09:12.070503" elapsed="0.000442"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:12.071508" 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-08-10T02:09:12.071089" elapsed="0.000450"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:12.548326" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:12.548568" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:12.548871" 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-08-10T02:09:12.071668" elapsed="0.477265"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.554111" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:12.549465" elapsed="0.004759"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfc9da80&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-08-10T02:09:12.066996" elapsed="0.487422"/>
</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-08-10T02:09:12.066567" elapsed="0.487975"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-08-10T02:09:12.054183" elapsed="0.500439"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.555786" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:12.555162" 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-08-10T02:09:12.561376" 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-08-10T02:09:12.561544" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:12.561211" elapsed="0.000363"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:12.562167" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe36a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:12.561727" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:12.562651" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:12.562369" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:12.563090" 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-08-10T02:09:12.562825" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:12.563614" 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-08-10T02:09:12.563327" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:12.564638" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:12.563789" elapsed="0.000880"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.565158" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:12.564829" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.565672" 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-08-10T02:09:12.565366" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.566180" 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-08-10T02:09:12.565870" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.566686" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:12.566387" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.567181" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:12.566876" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:12.567692" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe36a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:12.567389" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:12.560846" 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-08-10T02:09:12.569047" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9ec50&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:12.568725" elapsed="0.000349"/>
</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-08-10T02:09:12.569216" elapsed="0.000281"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:12.569645" 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-08-10T02:09:12.570051" 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-08-10T02:09:12.570461" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:12.571204" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9c9a0&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-08-10T02:09:12.570941" elapsed="0.000290"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:12.571393" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:12.572134" 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-08-10T02:09:12.571782" elapsed="0.000413"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:12.572731" 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-08-10T02:09:12.572351" elapsed="0.000410"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:13.049629" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:13.049937" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:13.050236" 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-08-10T02:09:12.572890" elapsed="0.477408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.055431" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:13.050784" elapsed="0.004750"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ecbe36a0&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-08-10T02:09:12.568374" elapsed="0.487297"/>
</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-08-10T02:09:12.567932" elapsed="0.487855"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-08-10T02:09:12.554868" elapsed="0.500997"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.057056" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:13.056500" elapsed="0.000655"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:13.062029" 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-08-10T02:09:13.062256" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:13.061828" elapsed="0.000469"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:13.063143" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe37e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:13.062533" elapsed="0.000650"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:13.063810" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:13.063418" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:13.064474" 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-08-10T02:09:13.064074" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:13.065091" 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-08-10T02:09:13.064718" elapsed="0.000409"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:13.066628" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:13.065354" elapsed="0.001318"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.067368" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:13.066892" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.068102" 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-08-10T02:09:13.067640" elapsed="0.000526"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.068721" 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-08-10T02:09:13.068412" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.069204" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:13.068908" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.069716" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:13.069413" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.070210" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe37e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:13.069908" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:13.061311" elapsed="0.008993"/>
</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-08-10T02:09:13.071609" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9e610&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:13.071242" 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-08-10T02:09:13.071791" elapsed="0.000269"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:13.072208" 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-08-10T02:09:13.072651" 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-08-10T02:09:13.073048" elapsed="0.000349"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:13.073813" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9fe20&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-08-10T02:09:13.073549" 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-08-10T02:09:13.073985" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:13.074778" 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-08-10T02:09:13.074390" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:13.075430" 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-08-10T02:09:13.074990" elapsed="0.000471"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:13.551247" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:13.551507" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:13.551840" 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-08-10T02:09:13.075590" elapsed="0.476313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.557251" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:13.552461" elapsed="0.004923"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ecbe37e0&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-08-10T02:09:13.070893" elapsed="0.486636"/>
</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-08-10T02:09:13.070467" elapsed="0.487185"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-08-10T02:09:13.056174" elapsed="0.501559"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.559030" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:13.558285" elapsed="0.000869"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:13.578281" 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-08-10T02:09:13.578516" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:13.578027" elapsed="0.000519"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:13.579175" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9d6c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:13.578705" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:13.579661" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:13.579376" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:13.580105" 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-08-10T02:09:13.579837" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:13.580569" 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-08-10T02:09:13.580281" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:13.581797" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:13.580744" elapsed="0.001085"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.582379" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:13.581992" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.582886" 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-08-10T02:09:13.582581" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.583402" 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-08-10T02:09:13.583077" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.583892" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:13.583595" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.584404" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:13.584084" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:13.584903" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777efc9d6c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:13.584598" 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-08-10T02:09:13.577622" elapsed="0.007376"/>
</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-08-10T02:09:13.586387" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9fdd0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:13.585956" 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-08-10T02:09:13.586594" 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-08-10T02:09:13.587026" 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-08-10T02:09:13.587430" 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-08-10T02:09:13.587822" elapsed="0.000337"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:13.588592" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9f0b0&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-08-10T02:09:13.588310" 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-08-10T02:09:13.588765" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:13.589581" 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-08-10T02:09:13.589158" elapsed="0.000530"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:13.590281" 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-08-10T02:09:13.589833" elapsed="0.000480"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:14.052033" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:14.052225" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:14.052549" 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-08-10T02:09:13.590506" elapsed="0.462104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.057937" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:14.053059" elapsed="0.004979"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777efc9d6c0&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-08-10T02:09:13.585603" elapsed="0.472575"/>
</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-08-10T02:09:13.585146" elapsed="0.473149"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-08-10T02:09:13.557994" elapsed="0.500433"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.059556" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:14.058971" 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-08-10T02:09:14.066950" 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-08-10T02:09:14.067112" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:14.066802" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:14.067777" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec33b380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:14.067298" elapsed="0.000509"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:14.068237" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:14.067959" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:14.068699" 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-08-10T02:09:14.068431" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:14.069431" 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-08-10T02:09:14.068872" elapsed="0.000587"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:14.070426" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:14.069613" elapsed="0.000844"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.070946" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:14.070617" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.071538" 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-08-10T02:09:14.071208" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.072037" 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-08-10T02:09:14.071730" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.072542" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:14.072226" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.073035" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:14.072734" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.073627" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec33b380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:14.073277" 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-08-10T02:09:14.066432" elapsed="0.007292"/>
</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-08-10T02:09:14.075028" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecb88fe0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:14.074673" 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-08-10T02:09:14.075199" 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-08-10T02:09:14.075636" elapsed="0.000233"/>
</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-08-10T02:09:14.076015" elapsed="0.000239"/>
</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-08-10T02:09:14.076419" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:14.077221" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9ec50&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-08-10T02:09:14.076904" 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-08-10T02:09:14.077446" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:14.078246" 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-08-10T02:09:14.077841" elapsed="0.000472"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:14.078898" 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-08-10T02:09:14.078477" elapsed="0.000451"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:14.552975" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:14.553261" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:14.553574" 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-08-10T02:09:14.079057" elapsed="0.474578"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.559082" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:14.554049" elapsed="0.005131"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec33b380&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-08-10T02:09:14.074300" elapsed="0.485014"/>
</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-08-10T02:09:14.073872" elapsed="0.485595"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-08-10T02:09:14.058682" elapsed="0.500862"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.560748" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:14.560070" 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-08-10T02:09:14.564647" 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-08-10T02:09:14.564812" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:14.564487" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:14.565490" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8a340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:14.564998" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:14.565962" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:14.565674" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:14.566448" 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-08-10T02:09:14.566139" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:14.566891" 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-08-10T02:09:14.566623" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:14.567831" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:14.567064" elapsed="0.000798"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.568380" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:14.568020" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.568901" 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-08-10T02:09:14.568588" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.569418" 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-08-10T02:09:14.569089" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.569906" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:14.569608" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.570420" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:14.570100" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:14.570919" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8a340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:14.570616" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:14.564077" elapsed="0.006936"/>
</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-08-10T02:09:14.572302" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec1a9b20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:14.571953" elapsed="0.000417"/>
</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-08-10T02:09:14.572521" 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-08-10T02:09:14.572941" elapsed="0.000233"/>
</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-08-10T02:09:14.573380" 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-08-10T02:09:14.573779" elapsed="0.000492"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:14.574734" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecb883b0&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-08-10T02:09:14.574461" 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-08-10T02:09:14.574908" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:14.575709" 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-08-10T02:09:14.575301" elapsed="0.000473"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:14.576373" 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-08-10T02:09:14.575921" elapsed="0.000484"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:15.054200" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:15.054443" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:15.054720" 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-08-10T02:09:14.576535" elapsed="0.478246"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.060168" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:15.055261" elapsed="0.005007"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ecb8a340&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-08-10T02:09:14.571602" elapsed="0.488844"/>
</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-08-10T02:09:14.571159" elapsed="0.489408"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-08-10T02:09:14.559788" elapsed="0.500858"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.061777" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:15.061188" 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-08-10T02:09:15.066883" 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-08-10T02:09:15.067053" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:15.066664" elapsed="0.000418"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:15.067708" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:15.067235" elapsed="0.000502"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:15.068184" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:15.067901" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:15.068657" 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-08-10T02:09:15.068388" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:15.069099" 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-08-10T02:09:15.068832" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:15.070050" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:15.069274" elapsed="0.000807"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.070586" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:15.070240" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.071080" 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-08-10T02:09:15.070779" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.071626" 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-08-10T02:09:15.071289" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.072190" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:15.071839" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.072726" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:15.072418" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.073223" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:15.072921" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:15.066277" elapsed="0.007041"/>
</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-08-10T02:09:15.074642" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec1ab7e0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:15.074271" elapsed="0.000398"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:15.074813" elapsed="0.000443"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:15.075429" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:15.075854" 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-08-10T02:09:15.076262" elapsed="0.000361"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:15.077042" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec1abe70&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-08-10T02:09:15.076776" 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-08-10T02:09:15.077216" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:15.078024" 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-08-10T02:09:15.077627" elapsed="0.000499"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:15.078705" 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-08-10T02:09:15.078271" elapsed="0.000464"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:15.555298" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:15.555546" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:15.555832" 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-08-10T02:09:15.078864" elapsed="0.477034"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.560730" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:15.556388" elapsed="0.004404"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec1ab830&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-08-10T02:09:15.073916" elapsed="0.486964"/>
</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-08-10T02:09:15.073483" elapsed="0.487472"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-08-10T02:09:15.060901" elapsed="0.500105"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.561717" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:15.561366" 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-08-10T02:09:15.566593" 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-08-10T02:09:15.566808" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:15.566393" elapsed="0.000456"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:15.567691" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:15.567061" elapsed="0.000684"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:15.568375" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:15.567959" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:15.569001" 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-08-10T02:09:15.568625" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:15.569654" 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-08-10T02:09:15.569251" elapsed="0.000440"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:15.570927" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:15.569901" elapsed="0.001069"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.571663" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:15.571187" elapsed="0.000573"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.572377" 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-08-10T02:09:15.571972" elapsed="0.000503"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.572943" 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-08-10T02:09:15.572627" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.573455" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:15.573135" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.573958" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:15.573651" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:15.574481" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:15.574154" 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-08-10T02:09:15.565887" elapsed="0.008691"/>
</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-08-10T02:09:15.576075" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec0371a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:15.575720" elapsed="0.000384"/>
</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-08-10T02:09:15.576250" 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-08-10T02:09:15.576689" 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-08-10T02:09:15.577068" 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-08-10T02:09:15.577504" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:15.578245" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec1ab920&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-08-10T02:09:15.577984" elapsed="0.000288"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:15.578433" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:15.579203" 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-08-10T02:09:15.578819" elapsed="0.000451"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:15.579852" 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-08-10T02:09:15.579432" elapsed="0.000451"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:16.056884" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:16.057165" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:16.057477" 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-08-10T02:09:15.580010" elapsed="0.477532"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.062547" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:16.057965" elapsed="0.004683"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec035df0&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-08-10T02:09:15.575154" elapsed="0.487628"/>
</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-08-10T02:09:15.574726" elapsed="0.488174"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-08-10T02:09:15.561164" elapsed="0.501815"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.064121" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:16.063540" 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-08-10T02:09:16.072023" 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-08-10T02:09:16.072387" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:16.071654" elapsed="0.000782"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:16.073042" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6a20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:16.072591" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:16.073522" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:16.073223" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:16.073965" 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-08-10T02:09:16.073698" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:16.074424" 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-08-10T02:09:16.074140" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:16.075407" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:16.074598" elapsed="0.000839"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.075933" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:16.075594" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.076450" 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-08-10T02:09:16.076124" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.078447" 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-08-10T02:09:16.076637" elapsed="0.001854"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.078948" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:16.078644" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.079468" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:16.079144" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.079987" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6a20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:16.079663" 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-08-10T02:09:16.070855" elapsed="0.009228"/>
</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-08-10T02:09:16.081410" level="INFO">${req} = &lt;Element 'flow' at 0x7777ee533c40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:16.081034" elapsed="0.000404"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:16.081582" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:16.081995" elapsed="0.000237"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:16.082441" 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-08-10T02:09:16.082831" elapsed="0.000333"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:16.083596" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ee531260&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-08-10T02:09:16.083313" 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-08-10T02:09:16.083794" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:16.084597" 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-08-10T02:09:16.084181" elapsed="0.000484"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:16.085228" 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-08-10T02:09:16.084808" elapsed="0.000451"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:16.557937" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:16.558147" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:16.558478" 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-08-10T02:09:16.085404" elapsed="0.473139"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.563785" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:16.559007" elapsed="0.004880"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec3e6a20&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-08-10T02:09:16.080682" elapsed="0.483342"/>
</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-08-10T02:09:16.080230" elapsed="0.483920"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-08-10T02:09:16.063215" elapsed="0.501048"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.565572" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:16.564940" 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-08-10T02:09:16.571217" 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-08-10T02:09:16.571411" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:16.571067" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:16.572067" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:16.571597" elapsed="0.000498"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:16.572590" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:16.572269" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:16.573037" 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-08-10T02:09:16.572768" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:16.573512" 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-08-10T02:09:16.573213" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:16.574729" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:16.573692" elapsed="0.001069"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.575254" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:16.574922" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.575809" 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-08-10T02:09:16.575495" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.576358" 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-08-10T02:09:16.576006" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.576870" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:16.576565" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.577396" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:16.577069" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:16.577915" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:16.577607" 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-08-10T02:09:16.570701" elapsed="0.007314"/>
</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-08-10T02:09:16.579415" level="INFO">${req} = &lt;Element 'flow' at 0x7777ee532fc0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:16.579036" elapsed="0.000407"/>
</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-08-10T02:09:16.579597" 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-08-10T02:09:16.580014" 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-08-10T02:09:16.580451" elapsed="0.000289"/>
</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-08-10T02:09:16.580890" elapsed="0.000334"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:16.581672" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ee530900&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-08-10T02:09:16.581394" 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-08-10T02:09:16.581848" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:16.582672" 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-08-10T02:09:16.582235" elapsed="0.000547"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:16.583381" 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-08-10T02:09:16.582929" elapsed="0.000484"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:17.063923" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:17.064105" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:17.064416" 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-08-10T02:09:16.583542" elapsed="0.480940"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.069690" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:17.064984" elapsed="0.004807"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec035670&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-08-10T02:09:16.578679" elapsed="0.491254"/>
</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-08-10T02:09:16.578164" elapsed="0.491918"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-08-10T02:09:16.564650" elapsed="0.505519"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.071398" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:17.070744" elapsed="0.000779"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:17.076134" 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-08-10T02:09:17.076307" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:17.075989" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:17.076981" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1aaa70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:17.076510" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:17.077493" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:17.077168" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:17.077947" 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-08-10T02:09:17.077676" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:17.078426" 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-08-10T02:09:17.078125" elapsed="0.000330"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:17.079589" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:17.078608" elapsed="0.001013"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.080108" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:17.079782" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.080727" 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-08-10T02:09:17.080393" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.081246" 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-08-10T02:09:17.080925" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.081778" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:17.081472" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.082293" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:17.081975" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.082831" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1aaa70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:17.082521" 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-08-10T02:09:17.075638" elapsed="0.007294"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-08-10T02:09:17.084252" level="INFO">${req} = &lt;Element 'flow' at 0x7777ee533ba0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:17.083890" 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-08-10T02:09:17.084452" 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-08-10T02:09:17.084909" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:17.085300" elapsed="0.000272"/>
</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-08-10T02:09:17.085723" elapsed="0.000337"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:17.086509" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ee532fc0&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-08-10T02:09:17.086213" 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-08-10T02:09:17.086685" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:17.087518" 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-08-10T02:09:17.087075" elapsed="0.000515"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:17.088165" 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-08-10T02:09:17.087738" elapsed="0.000459"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:17.560817" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:17.561171" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:17.561515" 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-08-10T02:09:17.088325" elapsed="0.473253"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.566776" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:17.562064" elapsed="0.004812"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec1aaa70&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-08-10T02:09:17.083535" elapsed="0.483475"/>
</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-08-10T02:09:17.083081" elapsed="0.484050"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-08-10T02:09:17.070449" elapsed="0.496786"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.568420" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:17.567814" 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-08-10T02:09:17.573044" 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-08-10T02:09:17.573211" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:17.572897" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:17.573883" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:17.573424" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:17.574371" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:17.574067" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:17.574825" 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-08-10T02:09:17.574557" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:17.575265" 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-08-10T02:09:17.575000" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:17.576373" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:17.575466" elapsed="0.000947"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.576914" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:17.576583" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.577457" 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-08-10T02:09:17.577111" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.577982" 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-08-10T02:09:17.577654" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.578501" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:17.578174" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.579000" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:17.578697" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:17.579530" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:17.579195" 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-08-10T02:09:17.572539" elapsed="0.007090"/>
</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-08-10T02:09:17.580944" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec037ec0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:17.580600" elapsed="0.000372"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:17.581115" 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-08-10T02:09:17.581568" 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-08-10T02:09:17.582038" 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-08-10T02:09:17.582453" elapsed="0.000363"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:17.583236" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec0354e0&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-08-10T02:09:17.582969" 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-08-10T02:09:17.583428" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:17.584222" 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-08-10T02:09:17.583840" elapsed="0.000448"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:17.584877" 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-08-10T02:09:17.584453" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:18.061701" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:18.061882" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:18.062159" 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-08-10T02:09:17.585039" elapsed="0.477183"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.067226" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:18.062692" elapsed="0.004630"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec1ab970&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-08-10T02:09:17.580202" elapsed="0.487291"/>
</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-08-10T02:09:17.579776" elapsed="0.487832"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-08-10T02:09:17.567527" elapsed="0.500159"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.068804" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:18.068215" 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-08-10T02:09:18.073820" 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-08-10T02:09:18.074040" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:18.073675" elapsed="0.000394"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:18.074688" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec338f90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:18.074220" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:18.075165" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:18.074884" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:18.075631" 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-08-10T02:09:18.075360" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:18.076077" 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-08-10T02:09:18.075809" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:18.077212" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:18.076254" elapsed="0.000989"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.077752" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:18.077422" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.078259" 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-08-10T02:09:18.077948" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.078798" 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-08-10T02:09:18.078469" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.079295" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:18.078990" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.079822" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:18.079514" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.080323" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec338f90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:18.080018" 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-08-10T02:09:18.073294" elapsed="0.007145"/>
</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-08-10T02:09:18.081749" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec034f40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:18.081393" elapsed="0.000384"/>
</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-08-10T02:09:18.081919" 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-08-10T02:09:18.082344" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:18.082758" 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-08-10T02:09:18.083146" elapsed="0.000354"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:18.083915" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec037ec0&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-08-10T02:09:18.083651" elapsed="0.000290"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:18.084086" elapsed="0.000239"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:18.084885" 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-08-10T02:09:18.084488" elapsed="0.000511"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:18.085584" 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-08-10T02:09:18.085146" elapsed="0.000469"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:18.563837" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:18.564051" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:18.564440" 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-08-10T02:09:18.085747" elapsed="0.478762"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.570551" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:18.565011" elapsed="0.005646"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec338f90&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-08-10T02:09:18.081021" elapsed="0.489783"/>
</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-08-10T02:09:18.080587" elapsed="0.490342"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-08-10T02:09:18.067930" elapsed="0.503083"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.572382" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:18.571655" elapsed="0.000856"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:18.576437" 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-08-10T02:09:18.576607" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:18.576272" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:18.577233" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee4894e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:18.576789" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:18.577715" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:18.577433" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:18.578156" 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-08-10T02:09:18.577891" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:18.578615" 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-08-10T02:09:18.578330" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:18.579523" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:18.578789" elapsed="0.000765"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.580054" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:18.579712" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.580645" 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-08-10T02:09:18.580304" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.581147" 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-08-10T02:09:18.580837" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.581653" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:18.581351" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.582148" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:18.581846" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:18.582667" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee4894e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:18.582359" 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-08-10T02:09:18.575895" elapsed="0.006868"/>
</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-08-10T02:09:18.584085" level="INFO">${req} = &lt;Element 'flow' at 0x7777ecbe1a30&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:18.583709" elapsed="0.000404"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:18.584257" 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-08-10T02:09:18.584698" 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-08-10T02:09:18.585080" 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-08-10T02:09:18.585487" elapsed="0.000333"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:18.586394" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecbe3510&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-08-10T02:09:18.585968" elapsed="0.000454"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:18.586571" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:18.587362" 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-08-10T02:09:18.586962" elapsed="0.000471"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:18.587982" 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-08-10T02:09:18.587577" elapsed="0.000447"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:19.064190" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:19.064548" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:19.064810" 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-08-10T02:09:18.588168" elapsed="0.476706"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.069974" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:19.065318" elapsed="0.004756"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ee4894e0&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-08-10T02:09:18.583355" elapsed="0.486857"/>
</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-08-10T02:09:18.582909" elapsed="0.487470"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-08-10T02:09:18.571276" elapsed="0.499199"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.071613" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:19.071017" 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-08-10T02:09:19.076746" 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-08-10T02:09:19.076908" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:19.076598" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:19.077556" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe10d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:19.077089" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:19.078022" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:19.077738" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:19.078483" 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-08-10T02:09:19.078197" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:19.078925" 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-08-10T02:09:19.078657" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:19.079844" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:19.079100" elapsed="0.000775"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.080377" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:19.080035" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.080880" 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-08-10T02:09:19.080572" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.081399" 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-08-10T02:09:19.081069" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.081904" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:19.081604" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.082421" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:19.082098" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.082925" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe10d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:19.082619" 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-08-10T02:09:19.076224" elapsed="0.006797"/>
</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-08-10T02:09:19.084315" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec1a9260&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:19.083968" 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-08-10T02:09:19.084505" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:19.084916" elapsed="0.000409"/>
</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-08-10T02:09:19.085561" 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-08-10T02:09:19.085967" elapsed="0.000333"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:19.086737" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ecb88400&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-08-10T02:09:19.086472" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:19.086911" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:19.087709" 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-08-10T02:09:19.087301" elapsed="0.000473"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:19.088325" 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-08-10T02:09:19.087920" elapsed="0.000452"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:19.565804" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:19.565995" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:19.566254" 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-08-10T02:09:19.088502" elapsed="0.477814"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.571590" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:19.566807" elapsed="0.004891"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ecbe10d0&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-08-10T02:09:19.083612" elapsed="0.488226"/>
</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-08-10T02:09:19.083168" elapsed="0.488791"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-08-10T02:09:19.070730" elapsed="0.501309"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.572870" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:19.572514" elapsed="0.000420"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:19.577825" 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-08-10T02:09:19.578112" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:19.577625" elapsed="0.000528"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:19.578990" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:19.578390" elapsed="0.000639"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:19.579686" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:19.579264" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:19.580316" 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-08-10T02:09:19.579939" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:19.580958" 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-08-10T02:09:19.580586" elapsed="0.000407"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:19.582188" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:19.581198" elapsed="0.001032"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.582921" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:19.582470" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.583663" 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-08-10T02:09:19.583189" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.584379" 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-08-10T02:09:19.583928" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.585056" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:19.584644" elapsed="0.000474"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.585769" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:19.585324" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:19.586481" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:19.586037" 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-08-10T02:09:19.577064" elapsed="0.009551"/>
</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-08-10T02:09:19.588704" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9ff10&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:19.587962" elapsed="0.000770"/>
</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-08-10T02:09:19.588879" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:19.589297" 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-08-10T02:09:19.589698" 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-08-10T02:09:19.590088" elapsed="0.000355"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:19.590859" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9c270&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-08-10T02:09:19.590595" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:19.591031" elapsed="0.000272"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:19.591848" 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-08-10T02:09:19.591467" elapsed="0.000495"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:19.592531" 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-08-10T02:09:19.592107" elapsed="0.000455"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:20.067295" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:20.067544" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:20.067812" 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-08-10T02:09:19.592692" elapsed="0.475181"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.072961" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:20.068320" elapsed="0.004760"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfc9d530&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-08-10T02:09:19.587474" elapsed="0.485745"/>
</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-08-10T02:09:19.586817" elapsed="0.486553"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-08-10T02:09:19.572282" elapsed="0.501172"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.074579" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:20.073984" 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-08-10T02:09:20.079851" 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-08-10T02:09:20.080017" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:20.079702" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:20.080663" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fb00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:20.080197" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:20.081137" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:20.080844" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:20.081607" 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-08-10T02:09:20.081314" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:20.082049" 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-08-10T02:09:20.081782" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:20.082969" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:20.082224" elapsed="0.000777"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.083509" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:20.083162" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.084007" 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-08-10T02:09:20.083702" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.084587" 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-08-10T02:09:20.084254" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.085100" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:20.084778" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.085623" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:20.085296" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.086122" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fb00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:20.085818" 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-08-10T02:09:20.079343" elapsed="0.006875"/>
</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-08-10T02:09:20.087707" level="INFO">${req} = &lt;Element 'flow' at 0x7777dfc9e840&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:20.087360" 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-08-10T02:09:20.087880" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:20.088293" 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-08-10T02:09:20.088698" 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-08-10T02:09:20.089171" elapsed="0.000353"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:20.089941" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777dfc9c1d0&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-08-10T02:09:20.089675" 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-08-10T02:09:20.090115" elapsed="0.000260"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:20.090902" 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-08-10T02:09:20.090524" elapsed="0.000445"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:20.091538" 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-08-10T02:09:20.091114" elapsed="0.000455"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:20.568978" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:20.569290" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:20.569593" 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-08-10T02:09:20.091699" elapsed="0.477956"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.574674" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:20.570106" elapsed="0.004668"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfc9fb00&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-08-10T02:09:20.086812" elapsed="0.488099"/>
</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-08-10T02:09:20.086381" elapsed="0.488647"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-08-10T02:09:20.073694" elapsed="0.501474"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.576320" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:20.575767" elapsed="0.000690"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:20.581649" 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-08-10T02:09:20.581820" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:20.581499" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:20.582479" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bb00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:20.582001" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:20.582940" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:20.582660" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:20.583415" 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-08-10T02:09:20.583128" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:20.583862" 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-08-10T02:09:20.583592" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:20.584819" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:20.584038" elapsed="0.000812"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.585352" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:20.585009" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.585860" 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-08-10T02:09:20.585553" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.586568" 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-08-10T02:09:20.586053" elapsed="0.000558"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.587085" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:20.586764" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.587614" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:20.587287" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:20.588118" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bb00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:20.587810" 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-08-10T02:09:20.581119" elapsed="0.007096"/>
</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-08-10T02:09:20.589544" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec36bf10&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:20.589164" 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-08-10T02:09:20.589718" elapsed="0.000260"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:20.590127" 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-08-10T02:09:20.590524" 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-08-10T02:09:20.590968" elapsed="0.000382"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:20.591772" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3e7ab0&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-08-10T02:09:20.591508" 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-08-10T02:09:20.591945" elapsed="0.000240"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:20.592747" 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-08-10T02:09:20.592347" elapsed="0.000468"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:20.593391" 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-08-10T02:09:20.592959" elapsed="0.000464"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:21.070764" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:21.070959" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:21.071215" 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-08-10T02:09:20.593552" elapsed="0.477723"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.076371" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:21.071785" elapsed="0.004689"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec36bb00&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-08-10T02:09:20.588810" elapsed="0.487799"/>
</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-08-10T02:09:20.588379" elapsed="0.488347"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-08-10T02:09:20.575464" elapsed="0.501341"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.077952" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:21.077391" elapsed="0.000659"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:21.083688" 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-08-10T02:09:21.083851" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:21.083535" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:21.084508" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b100&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:21.084033" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:21.084970" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:21.084690" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:21.085476" 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-08-10T02:09:21.085181" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:21.085923" 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-08-10T02:09:21.085654" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:21.087066" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:21.086097" elapsed="0.001000"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.087604" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:21.087256" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.088096" 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-08-10T02:09:21.087795" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.088612" 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-08-10T02:09:21.088284" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.089092" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:21.088797" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.089647" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:21.089324" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.090139" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36b100&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:21.089839" elapsed="0.000341"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:21.083154" elapsed="0.007080"/>
</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-08-10T02:09:21.091583" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3690d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:21.091199" 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-08-10T02:09:21.091753" elapsed="0.000262"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:21.092163" 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-08-10T02:09:21.092557" elapsed="0.000238"/>
</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-08-10T02:09:21.092940" elapsed="0.000358"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:21.093737" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec36aa70&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-08-10T02:09:21.093466" 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-08-10T02:09:21.093910" elapsed="0.000238"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:21.094711" 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-08-10T02:09:21.094293" elapsed="0.000519"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:21.095390" 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-08-10T02:09:21.094956" elapsed="0.000465"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:21.571763" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:21.571963" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:21.572259" 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-08-10T02:09:21.095549" elapsed="0.476773"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.577640" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:21.572880" elapsed="0.004859"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec36b100&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-08-10T02:09:21.090827" elapsed="0.487052"/>
</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-08-10T02:09:21.090399" elapsed="0.487600"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-08-10T02:09:21.077050" elapsed="0.501030"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.579383" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:21.578759" elapsed="0.000796"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:21.584742" 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-08-10T02:09:21.584958" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:21.584540" elapsed="0.000460"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:21.585845" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2ccc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:21.585210" elapsed="0.000675"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:21.586510" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:21.586097" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:21.587135" 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-08-10T02:09:21.586763" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:21.591847" 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-08-10T02:09:21.587400" elapsed="0.004485"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:21.594732" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:21.592177" elapsed="0.002589"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.595274" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:21.594933" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.595879" 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-08-10T02:09:21.595568" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.596399" 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-08-10T02:09:21.596070" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.596894" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:21.596594" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.597409" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:21.597086" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:21.597916" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2ccc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:21.597605" 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-08-10T02:09:21.584019" elapsed="0.013997"/>
</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-08-10T02:09:21.599363" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec36bdd0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:21.598988" elapsed="0.000404"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:21.599554" elapsed="0.000270"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:21.599975" elapsed="0.000232"/>
</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-08-10T02:09:21.600370" 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-08-10T02:09:21.600758" elapsed="0.000340"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:21.601532" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec36b970&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-08-10T02:09:21.601248" 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-08-10T02:09:21.601705" elapsed="0.000239"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:21.602492" 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-08-10T02:09:21.602089" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:21.603114" 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-08-10T02:09:21.602703" elapsed="0.000442"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:22.106202" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:22.106584" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:22.106899" 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-08-10T02:09:21.603281" elapsed="0.503680"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.111505" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:22.107463" elapsed="0.004105"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfe2ccc0&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-08-10T02:09:21.598618" elapsed="0.513042"/>
</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-08-10T02:09:21.598164" elapsed="0.513582"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-08-10T02:09:21.578326" elapsed="0.533473"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.112535" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:22.112161" 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-08-10T02:09:22.117499" 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-08-10T02:09:22.117782" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:22.117272" elapsed="0.000553"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:22.118661" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:22.118038" elapsed="0.000664"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:22.119303" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:22.118913" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:22.119952" 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-08-10T02:09:22.119576" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:22.120601" 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-08-10T02:09:22.120199" elapsed="0.000442"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:22.122083" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:22.120852" elapsed="0.001274"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.122829" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:22.122369" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.123557" 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-08-10T02:09:22.123102" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.124269" 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-08-10T02:09:22.123826" elapsed="0.000502"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.124987" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:22.124572" elapsed="0.000477"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.125770" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:22.125257" elapsed="0.000578"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.126519" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:22.126045" elapsed="0.000527"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:22.116768" elapsed="0.009863"/>
</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-08-10T02:09:22.127911" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec36ade0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:22.127572" elapsed="0.000366"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:22.128080" 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-08-10T02:09:22.128514" 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-08-10T02:09:22.128938" 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-08-10T02:09:22.129329" elapsed="0.000364"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:22.130129" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec368c70&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-08-10T02:09:22.129856" 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-08-10T02:09:22.130301" elapsed="0.000268"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:22.131090" 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-08-10T02:09:22.130716" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:22.131714" 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-08-10T02:09:22.131296" elapsed="0.000449"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:22.573783" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:22.573965" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:22.574248" 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-08-10T02:09:22.131874" elapsed="0.442436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.579366" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:22.574805" elapsed="0.004664"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec368950&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-08-10T02:09:22.127202" elapsed="0.452401"/>
</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-08-10T02:09:22.126777" elapsed="0.452947"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-08-10T02:09:22.111974" elapsed="0.467829"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.580991" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:22.580368" 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-08-10T02:09:22.586033" 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-08-10T02:09:22.586246" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:22.585830" elapsed="0.000456"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:22.587169" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bb00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:22.586599" elapsed="0.000610"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:22.587840" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:22.587448" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:22.588530" 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-08-10T02:09:22.588088" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:22.589158" 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-08-10T02:09:22.588780" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:22.590475" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:22.589431" elapsed="0.001088"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.591198" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:22.590740" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.591924" 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-08-10T02:09:22.591491" elapsed="0.000493"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.592690" 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-08-10T02:09:22.592195" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.593413" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:22.592961" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.593973" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:22.593665" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:22.594497" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36bb00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:22.594167" 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-08-10T02:09:22.585320" elapsed="0.009275"/>
</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-08-10T02:09:22.595859" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec368860&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:22.595542" elapsed="0.000345"/>
</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-08-10T02:09:22.596030" 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-08-10T02:09:22.596468" 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-08-10T02:09:22.596852" 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-08-10T02:09:22.597239" elapsed="0.000356"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:22.598009" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec36bab0&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-08-10T02:09:22.597746" elapsed="0.000289"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-08-10T02:09:22.598180" elapsed="0.000256"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:22.598928" 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-08-10T02:09:22.598582" elapsed="0.000404"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:22.599514" 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-08-10T02:09:22.599128" elapsed="0.000448"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:23.074960" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:23.075156" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:23.075472" 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-08-10T02:09:22.599707" elapsed="0.475828"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.080539" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:23.075981" elapsed="0.004656"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec36bb00&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-08-10T02:09:22.595171" elapsed="0.485602"/>
</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-08-10T02:09:22.594741" elapsed="0.486151"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-08-10T02:09:22.580044" elapsed="0.500927"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.082076" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:23.081524" elapsed="0.000653"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:09:23.087535" 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-08-10T02:09:23.087751" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:23.087316" elapsed="0.000475"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:23.088605" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e49f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:23.087998" elapsed="0.000649"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:23.089245" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:23.088858" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:23.089893" 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-08-10T02:09:23.089515" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:23.090533" 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-08-10T02:09:23.090137" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:23.091969" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:23.090780" elapsed="0.001234"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.092713" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:23.092234" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.093432" 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-08-10T02:09:23.092982" elapsed="0.000510"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.094133" 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-08-10T02:09:23.093700" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.094836" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:23.094419" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.095601" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:23.095213" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.096102" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e49f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:23.095796" 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-08-10T02:09:23.086810" elapsed="0.009389"/>
</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-08-10T02:09:23.097497" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec3684a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:23.097143" 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-08-10T02:09:23.097670" 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-08-10T02:09:23.098084" 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-08-10T02:09:23.098485" 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-08-10T02:09:23.098876" elapsed="0.003538"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:23.102885" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec3683b0&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-08-10T02:09:23.102601" 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-08-10T02:09:23.103070" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:23.103870" 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-08-10T02:09:23.103481" elapsed="0.000452"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:23.104504" 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-08-10T02:09:23.104075" elapsed="0.000467"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:23.575931" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:23.576095" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:23.576397" 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-08-10T02:09:23.104693" elapsed="0.471772"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.581542" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:23.577000" elapsed="0.004642"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777ec3e49f0&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-08-10T02:09:23.096792" elapsed="0.484986"/>
</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-08-10T02:09:23.096361" elapsed="0.485593"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-08-10T02:09:23.081205" elapsed="0.500831"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.582893" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:23.582541" 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-08-10T02:09:23.587879" 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-08-10T02:09:23.588085" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:23.587679" elapsed="0.000447"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:23.588924" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c4a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:23.588357" elapsed="0.000607"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:23.589585" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:23.589174" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:23.590247" 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-08-10T02:09:23.589864" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:23.590891" 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-08-10T02:09:23.590515" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:23.592256" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:23.591136" elapsed="0.001163"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.592991" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:23.592540" elapsed="0.000510"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.593712" 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-08-10T02:09:23.593259" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.594467" 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-08-10T02:09:23.594016" elapsed="0.000493"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.594954" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:23.594657" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.595466" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:23.595147" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:23.595967" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c4a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:23.595664" 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-08-10T02:09:23.587164" elapsed="0.008898"/>
</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-08-10T02:09:23.597331" level="INFO">${req} = &lt;Element 'flow' at 0x7777ec36af70&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:23.597011" elapsed="0.000364"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:23.597518" 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-08-10T02:09:23.597942" 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-08-10T02:09:23.598323" 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-08-10T02:09:23.598733" elapsed="0.000329"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-08-10T02:09:23.599512" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7777ec36a4d0&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-08-10T02:09:23.599210" 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-08-10T02:09:23.599747" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-08-10T02:09:23.600502" 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-08-10T02:09:23.600136" elapsed="0.000429"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:23.601088" 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-08-10T02:09:23.600709" elapsed="0.000409"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:24.077016" level="INFO">POST Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.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-08-10T02:09:24.077172" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:24.077477" 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-08-10T02:09:23.601246" elapsed="0.476294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:24.082489" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:24.077950" elapsed="0.004637"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7777dfc9c4a0&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-08-10T02:09:23.596661" elapsed="0.486058"/>
</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-08-10T02:09:23.596210" elapsed="0.486627"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-08-10T02:09:23.582272" elapsed="0.500644"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-08-10T02:08:59.047524" elapsed="25.035469"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.084239" 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-08-10T02:09:24.083368" elapsed="3.001134"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:09:27.090457" 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-08-10T02:09:27.085007" elapsed="0.005588"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:09:27.172569" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=131.839s, table=0, n_packets=20, n_bytes=1552, 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-08-10T02:09:27.090972" elapsed="0.081722"/>
</kw>
<doc>Delete all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-08-10T02:08:59.047108" elapsed="28.125768"/>
</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-08-10T02:09:27.184222" 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-08-10T02:09:27.184412" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.184053" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.185144" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.184678" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.185631" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.185327" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.186082" 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-08-10T02:09:27.185811" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.186551" 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-08-10T02:09:27.186259" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.187640" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.186729" elapsed="0.000942"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.188173" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.187833" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.188705" 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-08-10T02:09:27.188384" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.189216" 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-08-10T02:09:27.188895" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.189738" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.189421" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.190241" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.189929" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.190769" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.190450" 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-08-10T02:09:27.183709" elapsed="0.007157"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.191454" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.191015" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.191879" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:27.191635" 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-08-10T02:09:27.200018" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.199697" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.206134" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.206827" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.207016" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.200200" elapsed="0.006844"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.210969" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.207215" elapsed="0.003834"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.216307" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.211297" elapsed="0.005148"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.219831" elapsed="0.000081"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.216621" elapsed="0.003384"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.216573" elapsed="0.003495"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:27.220397" elapsed="0.000042"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.220813" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.220559" elapsed="0.000345"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.220531" elapsed="0.000412"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.221005" elapsed="0.000025"/>
</return>
<msg time="2026-08-10T02:09:27.223584" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.223630" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.199356" elapsed="0.024296"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.225961" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.224297" elapsed="0.001724"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.224270" elapsed="0.001774"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.226647" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.226198" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.227189" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.226837" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.227282" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:27.227491" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.223909" 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-08-10T02:09:27.227679" 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-08-10T02:09:27.198660" elapsed="0.029518"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.236359" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.236013" elapsed="0.000384"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.242244" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.242472" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.242586" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.236541" elapsed="0.006071"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.243033" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.242777" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.245293" 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-08-10T02:09:27.243243" 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-08-10T02:09:27.247327" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.245546" elapsed="0.001852"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.245524" elapsed="0.001897"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.251411" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.251478" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.247603" elapsed="0.003907"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.254029" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.251619" elapsed="0.002489"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.251594" elapsed="0.002548"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.254189" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:27.254502" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.254565" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.235621" elapsed="0.018975"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.257683" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.255427" elapsed="0.002320"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.255399" elapsed="0.002379"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.258586" 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-08-10T02:09:27.257983" elapsed="0.000642"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.259411" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.258851" elapsed="0.000598"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.259511" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:27.259689" 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-08-10T02:09:27.254908" elapsed="0.004807"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.259870" 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-08-10T02:09:27.234879" elapsed="0.025449"/>
</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-08-10T02:09:27.180393" elapsed="0.080011"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.173297" elapsed="0.087235"/>
</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-08-10T02:09:27.271558" 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-08-10T02:09:27.271891" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.271408" elapsed="0.000518"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.272521" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c040&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.272082" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.273015" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.272703" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.273514" 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-08-10T02:09:27.273210" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.273958" 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-08-10T02:09:27.273690" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.274926" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.274130" elapsed="0.000827"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.275580" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.275161" elapsed="0.000469"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.276164" 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-08-10T02:09:27.275836" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.276752" 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-08-10T02:09:27.276412" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.277255" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.276944" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.277797" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.277479" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.278307" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c040&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.277989" 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-08-10T02:09:27.271018" elapsed="0.007405"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.278953" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.278573" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.279407" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:09:27.279130" 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-08-10T02:09:27.287508" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.287174" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.292510" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.293069" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.293171" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.287665" elapsed="0.005532"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.293629" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.293373" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.296177" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.293814" elapsed="0.002414"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.298172" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.296296" elapsed="0.001945"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.296277" 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-08-10T02:09:27.298430" elapsed="0.000028"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.298742" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.298585" elapsed="0.000212"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.298562" elapsed="0.000258"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.298854" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:27.301250" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.301315" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.286842" elapsed="0.014542"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.304561" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.302225" elapsed="0.002400"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.302199" elapsed="0.002456"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.305443" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.304860" elapsed="0.000620"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.306219" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.305729" elapsed="0.000526"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.306326" elapsed="0.000081"/>
</return>
<msg time="2026-08-10T02:09:27.306633" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.301724" elapsed="0.004945"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.306887" elapsed="0.000614"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:27.286251" elapsed="0.021341"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.316979" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.316679" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.322408" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.322760" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.322877" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.317136" elapsed="0.005767"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.326550" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.323065" elapsed="0.003544"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.328852" 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-08-10T02:09:27.326784" elapsed="0.002120"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.330763" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.328980" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.328961" elapsed="0.001874"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.334461" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.334525" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.330975" 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-08-10T02:09:27.337107" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.334665" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.334638" elapsed="0.002581"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.337266" elapsed="0.000052"/>
</return>
<msg time="2026-08-10T02:09:27.337576" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.337637" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.316259" elapsed="0.021410"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.340843" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.338530" elapsed="0.002377"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.338503" elapsed="0.002435"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.341732" 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-08-10T02:09:27.341141" elapsed="0.000628"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.342505" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.341993" elapsed="0.000549"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.342611" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:27.342861" 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-08-10T02:09:27.338034" elapsed="0.004861"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.343152" elapsed="0.000522"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:27.315620" elapsed="0.028117"/>
</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-08-10T02:09:27.267773" elapsed="0.076021"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.260840" elapsed="0.083075"/>
</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-08-10T02:09:27.355101" 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-08-10T02:09:27.355258" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.354932" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.355889" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1d00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.355486" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.356366" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.356069" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.356846" 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-08-10T02:09:27.356570" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.357290" 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-08-10T02:09:27.357023" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.358249" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.357498" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.358788" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.358456" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.359315" 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-08-10T02:09:27.358980" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.359844" 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-08-10T02:09:27.359522" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.360356" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.360032" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.360863" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.360549" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.361426" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1d00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.361090" 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-08-10T02:09:27.354589" elapsed="0.006935"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.362047" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.361670" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.362510" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:09:27.362222" 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-08-10T02:09:27.370275" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.369978" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.375788" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.376371" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.376477" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.370448" elapsed="0.006055"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.377060" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.376708" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.380658" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.377320" elapsed="0.003429"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.383499" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.380851" elapsed="0.002751"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.380824" 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-08-10T02:09:27.383839" 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-08-10T02:09:27.384151" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.383965" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.383943" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.384299" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:27.387114" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.387223" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.369664" elapsed="0.017611"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.392247" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.388576" elapsed="0.003804"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.388534" elapsed="0.003897"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.393683" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.392756" elapsed="0.001060"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.395052" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.394179" elapsed="0.000935"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.395226" elapsed="0.000062"/>
</return>
<msg time="2026-08-10T02:09:27.395608" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.387795" elapsed="0.007838"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.395790" 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-08-10T02:09:27.369092" elapsed="0.027147"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.403979" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.403683" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.409170" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.409325" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.409458" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.404132" elapsed="0.005353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.409901" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.409647" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.412121" 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-08-10T02:09:27.410088" elapsed="0.002083"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.413984" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.412239" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.412220" elapsed="0.001835"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.417269" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.417361" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.414194" elapsed="0.003203"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.420066" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.417510" elapsed="0.002638"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.417482" elapsed="0.002700"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.420232" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:27.420539" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.420603" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.403290" elapsed="0.017346"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.423890" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.421462" elapsed="0.002494"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.421436" elapsed="0.002552"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.424817" 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-08-10T02:09:27.424202" elapsed="0.000655"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.425631" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.425093" elapsed="0.000576"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.425741" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:09:27.426058" 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-08-10T02:09:27.420952" elapsed="0.005144"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.426330" 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-08-10T02:09:27.402665" elapsed="0.024394"/>
</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-08-10T02:09:27.351288" elapsed="0.075855"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.344200" elapsed="0.083107"/>
</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-08-10T02:09:27.438429" 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-08-10T02:09:27.438588" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.438262" elapsed="0.000355"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.440764" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe36a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.438777" elapsed="0.002016"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.441242" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.440949" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.441707" 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-08-10T02:09:27.441438" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.442150" 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-08-10T02:09:27.441883" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.443205" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.442325" elapsed="0.000912"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.443754" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.443414" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.444263" 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-08-10T02:09:27.443947" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.444797" 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-08-10T02:09:27.444474" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.445297" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.444986" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.445825" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.445510" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.446360" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe36a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.446018" 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-08-10T02:09:27.437910" elapsed="0.008550"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.447005" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.446607" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.447444" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:27.447186" 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-08-10T02:09:27.455252" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.454948" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.460706" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.461534" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.461685" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.455424" elapsed="0.006299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.462326" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.461958" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.466127" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.462627" elapsed="0.003575"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.468962" elapsed="0.000055"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.466310" elapsed="0.002765"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.466280" elapsed="0.002832"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:27.469322" 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-08-10T02:09:27.469677" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.469479" elapsed="0.000272"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.469454" elapsed="0.000331"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.469832" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:27.472084" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.472129" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.454621" elapsed="0.017531"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.474287" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.472714" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.472697" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.474924" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.474516" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.475478" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.475112" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.475554" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:09:27.475730" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.472382" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.475910" 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-08-10T02:09:27.454042" elapsed="0.022340"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.484168" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.483875" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.491786" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.492105" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.492265" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.484321" elapsed="0.007983"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.492936" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.492566" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.496239" 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-08-10T02:09:27.493209" elapsed="0.003105"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.499074" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.496439" elapsed="0.002707"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.496411" elapsed="0.002769"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.503194" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.503262" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.499406" elapsed="0.003890"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.505172" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.503433" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.503405" elapsed="0.001846"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.505284" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:27.505493" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.505536" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.483493" elapsed="0.022068"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.507702" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.506108" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.506090" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.508309" 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-08-10T02:09:27.507914" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.508869" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.508518" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.508945" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:09:27.509120" 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-08-10T02:09:27.505780" elapsed="0.003364"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.509300" 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-08-10T02:09:27.482833" elapsed="0.026932"/>
</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-08-10T02:09:27.434518" elapsed="0.075302"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.427657" elapsed="0.082286"/>
</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-08-10T02:09:27.520809" 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-08-10T02:09:27.520945" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.520672" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.521550" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1e40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.521124" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.522049" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.521733" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.522516" 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-08-10T02:09:27.522230" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.522974" 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-08-10T02:09:27.522692" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.523988" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.523149" elapsed="0.000870"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.524526" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.524174" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.525043" 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-08-10T02:09:27.524724" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.525581" 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-08-10T02:09:27.525236" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.526085" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.525773" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.526616" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.526280" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.527162" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1e40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.526812" 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-08-10T02:09:27.520343" elapsed="0.006916"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.527805" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.527426" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.528228" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:27.527986" 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-08-10T02:09:27.535984" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.535686" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.541250" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.541800" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.541937" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.536136" elapsed="0.005827"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.542393" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.542120" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.544916" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.542578" elapsed="0.002389"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.546787" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.545035" elapsed="0.001846"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.545016" 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-08-10T02:09:27.547048" 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-08-10T02:09:27.547271" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.547139" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.547123" elapsed="0.000240"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.547396" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:27.549772" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.549837" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.535372" elapsed="0.014499"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.553072" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.550697" elapsed="0.002442"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.550671" elapsed="0.002500"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.553992" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.553407" elapsed="0.000624"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.554802" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.554264" elapsed="0.003232"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.557577" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:09:27.557848" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.550180" elapsed="0.007705"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.558114" elapsed="0.000594"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:27.534792" elapsed="0.024007"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.566832" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.566521" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.571937" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.572248" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.572380" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.566985" elapsed="0.005423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.572822" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.572571" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.575023" 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-08-10T02:09:27.573006" 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-08-10T02:09:27.576971" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.575204" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.575185" elapsed="0.001857"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.579932" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.579999" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.577180" elapsed="0.002853"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.582691" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.580145" elapsed="0.002626"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.580118" elapsed="0.002705"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.582874" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:27.583157" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.583221" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.566129" elapsed="0.017125"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.586469" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.584077" elapsed="0.002458"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.584051" elapsed="0.002516"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.587435" 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-08-10T02:09:27.586821" elapsed="0.000654"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.588023" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.587674" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.588098" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:27.588276" 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-08-10T02:09:27.583593" elapsed="0.004708"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.588476" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:27.565517" elapsed="0.023406"/>
</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-08-10T02:09:27.517079" elapsed="0.071900"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.510219" elapsed="0.078873"/>
</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-08-10T02:09:27.599942" 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-08-10T02:09:27.600094" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.599804" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.600696" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.600273" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.601149" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.600874" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.601613" 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-08-10T02:09:27.601326" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.602054" 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-08-10T02:09:27.601786" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.603051" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.602228" elapsed="0.000855"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.603597" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.603241" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.604178" 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-08-10T02:09:27.603854" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.604712" 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-08-10T02:09:27.604388" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.605214" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.604903" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.605742" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.605425" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.606254" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.605937" 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-08-10T02:09:27.599476" elapsed="0.006891"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.606908" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.606517" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.607325" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:27.607086" 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-08-10T02:09:27.615084" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.614786" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.619643" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.620392" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.620548" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.615247" elapsed="0.005345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.621214" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.620845" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.625021" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.621513" elapsed="0.003584"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.627838" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.625196" elapsed="0.002739"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.625168" elapsed="0.002803"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:27.628224" 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-08-10T02:09:27.628581" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.628381" elapsed="0.000276"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.628355" elapsed="0.000336"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.628738" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:09:27.631202" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.631267" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.614458" elapsed="0.016843"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.633535" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.631949" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.631931" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.634139" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.633747" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.634689" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.634325" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.634776" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:27.634953" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.631619" elapsed="0.003359"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.635132" 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-08-10T02:09:27.613887" elapsed="0.021712"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.643382" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.643069" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.648466" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.648837" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.648957" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.643536" elapsed="0.005447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.649466" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.649161" elapsed="0.000351"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.651713" 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-08-10T02:09:27.649659" elapsed="0.002105"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.653593" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.651837" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.651817" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.656846" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.656914" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.653802" elapsed="0.003146"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.659667" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.657059" elapsed="0.002690"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.657033" elapsed="0.002751"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.659833" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:27.660185" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.660250" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.642668" elapsed="0.017616"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.663539" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.661132" elapsed="0.002490"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.661107" elapsed="0.002553"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.664468" 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-08-10T02:09:27.663884" elapsed="0.000621"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.665213" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.664729" elapsed="0.000521"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.665319" elapsed="0.000061"/>
</return>
<msg time="2026-08-10T02:09:27.665592" 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-08-10T02:09:27.660641" elapsed="0.004986"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.665841" 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-08-10T02:09:27.642035" elapsed="0.024453"/>
</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-08-10T02:09:27.596183" elapsed="0.070389"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.589373" elapsed="0.077394"/>
</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-08-10T02:09:27.677921" 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-08-10T02:09:27.678065" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.677780" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.678711" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c180&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.678245" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.679174" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.678893" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.679639" 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-08-10T02:09:27.679368" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.680079" 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-08-10T02:09:27.679813" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.681142" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.680252" elapsed="0.000921"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.681677" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.681328" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.682187" 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-08-10T02:09:27.681870" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.682728" 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-08-10T02:09:27.682394" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.683228" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.682919" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.683756" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.683440" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.684308" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9c180&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.683990" 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-08-10T02:09:27.677449" elapsed="0.006973"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.684946" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.684568" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.685376" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:27.685122" 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-08-10T02:09:27.693135" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.692835" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.699001" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.699579" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.699728" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.693288" elapsed="0.006479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.700433" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.700037" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.704176" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.700756" elapsed="0.003495"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.707020" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.704374" elapsed="0.002737"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.704323" elapsed="0.002822"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:27.707362" 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-08-10T02:09:27.707677" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.707489" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.707467" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.707824" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:27.710171" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.710234" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.692522" elapsed="0.017743"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.712915" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.711137" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.711112" elapsed="0.001870"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.713542" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.713128" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.714074" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.713728" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.714149" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:09:27.714325" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.710585" elapsed="0.003782"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.714523" 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-08-10T02:09:27.691952" elapsed="0.023036"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.722909" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.722590" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.727817" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.727969" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.728081" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.723065" elapsed="0.005042"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.728542" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.728265" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.730763" 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-08-10T02:09:27.728730" elapsed="0.002084"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.732636" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.730882" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.730863" elapsed="0.001843"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.735510" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.735559" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.732841" elapsed="0.002755"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.738270" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.735708" elapsed="0.002665"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.735682" elapsed="0.002727"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.738460" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:27.738762" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.738827" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.722198" elapsed="0.016662"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.741972" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.739731" elapsed="0.002304"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.739701" elapsed="0.002364"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.742861" 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-08-10T02:09:27.742268" elapsed="0.000631"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.743695" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.743175" elapsed="0.000557"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.743803" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:27.744050" 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-08-10T02:09:27.739178" elapsed="0.004908"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.744308" elapsed="0.000560"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:27.721585" elapsed="0.023372"/>
</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-08-10T02:09:27.674167" elapsed="0.070868"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.667135" elapsed="0.078056"/>
</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-08-10T02:09:27.757010" 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-08-10T02:09:27.757144" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.756872" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.757763" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f4c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.757326" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.758216" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.757941" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.758708" 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-08-10T02:09:27.758410" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.759150" 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-08-10T02:09:27.758882" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.760085" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.759324" elapsed="0.000791"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.760618" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.760268" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.761129" 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-08-10T02:09:27.760812" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.761659" 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-08-10T02:09:27.761319" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.762159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.761848" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.762698" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.762370" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.763211" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f4c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.762895" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:27.756543" elapsed="0.006764"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.763860" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.763480" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.764319" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:27.764076" 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-08-10T02:09:27.772114" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.771816" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.777021" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.777549" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.777661" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.772268" elapsed="0.005419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.778098" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.777848" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.780806" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.778286" elapsed="0.002571"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.787868" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.780925" elapsed="0.007037"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.780906" elapsed="0.007090"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:27.788194" 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-08-10T02:09:27.788532" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.788320" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.788297" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.788681" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:27.790970" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.791033" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.771497" elapsed="0.019567"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.794054" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.791843" elapsed="0.002274"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.791819" elapsed="0.002329"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.794986" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.794371" elapsed="0.000653"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.795697" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.795246" elapsed="0.000477"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.795822" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:27.796001" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.791381" elapsed="0.004645"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.796178" 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-08-10T02:09:27.770926" elapsed="0.025717"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.804499" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.804185" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.809278" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.809459" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.809558" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.804652" elapsed="0.004931"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.809995" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.809744" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.812222" 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-08-10T02:09:27.810182" elapsed="0.002091"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.814079" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.812357" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.812321" elapsed="0.001829"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.817628" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.817692" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.814287" elapsed="0.003436"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.820473" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.817829" elapsed="0.002723"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.817803" elapsed="0.002783"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.820633" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:09:27.820897" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.820957" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.803808" elapsed="0.017180"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.824204" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.821823" elapsed="0.002446"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.821797" elapsed="0.002504"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.825142" 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-08-10T02:09:27.824546" elapsed="0.000633"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.825988" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.825429" elapsed="0.000597"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.826100" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:27.826384" 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-08-10T02:09:27.821282" elapsed="0.005140"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.826691" elapsed="0.000568"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:27.803179" elapsed="0.024252"/>
</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-08-10T02:09:27.753063" elapsed="0.074450"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.745560" elapsed="0.082089"/>
</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-08-10T02:09:27.838502" 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-08-10T02:09:27.838639" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.838319" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.839236" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.838820" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.839714" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.839436" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.840159" 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-08-10T02:09:27.839890" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.840622" 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-08-10T02:09:27.840351" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.841552" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.840795" elapsed="0.000788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.842077" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.841749" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.842618" 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-08-10T02:09:27.842270" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.843134" 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-08-10T02:09:27.842811" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.843655" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.843324" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.844161" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.843847" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.844690" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.844372" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:27.837991" elapsed="0.006793"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.845311" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.844932" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.845750" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:27.845511" 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-08-10T02:09:27.853891" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.853485" elapsed="0.000435"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.859021" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.859599" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.859750" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.854057" elapsed="0.005731"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.860424" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.860026" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.864215" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.860729" elapsed="0.003559"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.866885" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.864413" elapsed="0.002568"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.864385" elapsed="0.002631"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:27.867214" 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-08-10T02:09:27.867550" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.867360" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.867315" elapsed="0.000339"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.867699" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:27.870107" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.870174" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.853104" elapsed="0.017103"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.872797" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.871070" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.871045" elapsed="0.001819"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.873424" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.873010" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.873955" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.873609" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.874030" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:09:27.874205" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.870590" elapsed="0.003640"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.874401" 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-08-10T02:09:27.852547" elapsed="0.022315"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.882663" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.882324" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.887446" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.887651" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.887749" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.882816" elapsed="0.004959"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.888183" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.887935" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.890568" 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-08-10T02:09:27.888390" elapsed="0.002229"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.892439" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.890687" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.890668" elapsed="0.001843"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.895385" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.895432" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.892654" elapsed="0.002803"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.898100" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.895545" elapsed="0.002638"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.895522" elapsed="0.002696"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.898264" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:27.898572" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.898633" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.881946" elapsed="0.016717"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.901864" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.899443" elapsed="0.002487"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.899419" elapsed="0.002543"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.902802" 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-08-10T02:09:27.902177" elapsed="0.000665"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.903630" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.903079" elapsed="0.000589"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.903741" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:27.904003" 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-08-10T02:09:27.898959" 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-08-10T02:09:27.904270" elapsed="0.000608"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:27.881319" elapsed="0.023651"/>
</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-08-10T02:09:27.834741" elapsed="0.070314"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.827896" elapsed="0.077334"/>
</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-08-10T02:09:27.916922" 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-08-10T02:09:27.917080" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.916778" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.917715" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1a8e00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.917262" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.918227" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.917941" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.918725" 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-08-10T02:09:27.918449" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.919173" 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-08-10T02:09:27.918902" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.921933" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.919366" elapsed="0.002598"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.922490" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.922125" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.923009" 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-08-10T02:09:27.922692" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.923541" 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-08-10T02:09:27.923202" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.924039" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.923731" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.924565" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.924231" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.925082" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1a8e00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.924760" 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-08-10T02:09:27.916450" elapsed="0.008727"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.925722" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:27.925325" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.926140" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:27.925901" 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-08-10T02:09:27.933934" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.933636" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.938744" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.939290" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:27.939461" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.934085" elapsed="0.005402"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.940053" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.939706" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.943675" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.940312" elapsed="0.003434"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:27.946306" elapsed="0.000071"/>
</return>
<status status="PASS" start="2026-08-10T02:09:27.943843" elapsed="0.002589"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.943816" elapsed="0.002651"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:27.946663" 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-08-10T02:09:27.946972" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.946788" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:27.946765" elapsed="0.000309"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.947118" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:27.949399" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:27.949467" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:27.933305" elapsed="0.016194"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.952298" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.950249" elapsed="0.002109"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.950225" elapsed="0.002155"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.952917" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.952525" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.953467" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.953103" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.953541" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:27.953718" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:27.949794" elapsed="0.003949"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.953897" 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-08-10T02:09:27.932748" elapsed="0.021627"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.962171" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:27.961877" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:27.967613" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:27.967770" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:27.967866" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:27.962325" elapsed="0.005567"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.968298" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:27.968050" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.970786" 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-08-10T02:09:27.968505" elapsed="0.002371"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.973230" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.970946" elapsed="0.002352"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.970927" elapsed="0.002402"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.977277" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:27.977362" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:27.973550" elapsed="0.003847"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:27.979886" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:27.977503" elapsed="0.002459"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.977477" elapsed="0.002518"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:27.980041" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:09:27.980306" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:27.980391" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:27.961504" elapsed="0.018920"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:27.983228" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:27.981181" elapsed="0.002092"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:27.981156" elapsed="0.002139"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.983852" 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-08-10T02:09:27.983455" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:27.984407" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:27.984038" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:27.984482" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:27.984658" 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-08-10T02:09:27.980724" elapsed="0.003959"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:27.984838" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:27.960877" elapsed="0.024404"/>
</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-08-10T02:09:27.913184" elapsed="0.072169"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.905694" elapsed="0.079779"/>
</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-08-10T02:09:27.996312" 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-08-10T02:09:27.996472" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:27.996172" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:27.997070" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:27.996651" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.997544" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:27.997248" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.997987" 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-08-10T02:09:27.997720" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:27.998460" 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-08-10T02:09:27.998160" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:27.999620" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:27.998634" elapsed="0.001017"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.000136" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:27.999807" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.000702" 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-08-10T02:09:28.000381" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.001215" 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-08-10T02:09:28.000894" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.001732" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.001421" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.002237" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.001925" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.002784" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec368950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.002466" 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-08-10T02:09:27.995843" elapsed="0.007039"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.003426" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:28.003030" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.003844" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:28.003606" 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-08-10T02:09:28.011626" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.011311" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.017010" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.017551" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.017713" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.011781" elapsed="0.005976"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.018368" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.017977" elapsed="0.000456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.021966" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.018631" elapsed="0.003409"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.024676" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.022184" elapsed="0.002586"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.022110" elapsed="0.002695"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.025004" 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-08-10T02:09:28.025319" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.025131" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.025108" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.025494" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:09:28.027508" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.027553" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.010998" elapsed="0.016579"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.029700" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.028123" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.028106" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.030318" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.029911" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.030868" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.030521" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.030943" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:28.031119" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.027794" elapsed="0.003353"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.031304" 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-08-10T02:09:28.010362" elapsed="0.021405"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.039659" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.039357" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.044670" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.044824" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.044931" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.039812" elapsed="0.005145"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.045379" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.045113" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.047589" 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-08-10T02:09:28.045569" elapsed="0.002070"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.049449" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.047705" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.047687" elapsed="0.001834"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.053124" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.053189" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.049663" elapsed="0.003558"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.055740" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.053349" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.053303" elapsed="0.002604"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.055955" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.056225" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.056285" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.038967" elapsed="0.017350"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.059331" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.057106" elapsed="0.002309"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.057082" elapsed="0.002365"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.060197" 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-08-10T02:09:28.059647" elapsed="0.000587"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.060981" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.060493" elapsed="0.000524"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.061086" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:28.061359" 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-08-10T02:09:28.056649" elapsed="0.004776"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.061765" elapsed="0.000682"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.038352" elapsed="0.024200"/>
</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-08-10T02:09:27.992559" elapsed="0.070090"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:27.985746" elapsed="0.077053"/>
</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-08-10T02:09:28.073971" 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-08-10T02:09:28.074131" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:28.073828" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.074802" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.074357" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.075267" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.074984" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.075753" 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-08-10T02:09:28.075482" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.076195" 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-08-10T02:09:28.075929" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.077140" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:28.076385" elapsed="0.000785"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.077687" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.077327" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.078210" 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-08-10T02:09:28.077879" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.078745" 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-08-10T02:09:28.078420" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.079249" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.078936" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.079827" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.079505" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.080361" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.080024" 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-08-10T02:09:28.073494" elapsed="0.006965"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.080992" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:28.080605" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.081426" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:28.081170" 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-08-10T02:09:28.089230" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.088927" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.094168" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.094757" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.094870" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.089403" elapsed="0.005493"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.095307" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.095059" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.097983" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.095515" elapsed="0.002519"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.100415" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.098107" elapsed="0.002404"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.098086" elapsed="0.002459"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.100745" 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-08-10T02:09:28.101056" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.100870" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.100847" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.101206" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:28.103579" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.103642" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.088613" elapsed="0.015061"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.106691" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.104456" elapsed="0.002298"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.104431" elapsed="0.002354"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.107568" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.106988" elapsed="0.000618"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.108321" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.107830" elapsed="0.000550"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.108451" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.108703" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.103971" elapsed="0.004767"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.108954" elapsed="0.000556"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.088036" elapsed="0.021561"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.117852" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.117554" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.122712" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.122877" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.122976" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.118006" elapsed="0.004995"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.123436" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.123162" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.125633" 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-08-10T02:09:28.123622" elapsed="0.002061"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.127507" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.125752" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.125733" elapsed="0.001846"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.130320" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.130384" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.127715" 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-08-10T02:09:28.133042" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.130484" elapsed="0.002635"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.130466" elapsed="0.002687"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.133200" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:28.133494" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.133557" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.117160" elapsed="0.016428"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.136605" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.134387" elapsed="0.002340"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.134360" elapsed="0.002402"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.137552" 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-08-10T02:09:28.136968" elapsed="0.000622"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.138319" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.137814" elapsed="0.000565"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.138450" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:28.138700" 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-08-10T02:09:28.133885" elapsed="0.004854"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.138954" elapsed="0.000560"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.116537" elapsed="0.023069"/>
</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-08-10T02:09:28.070004" elapsed="0.069681"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.063120" elapsed="0.076722"/>
</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-08-10T02:09:28.153771" 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-08-10T02:09:28.153927" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:28.153631" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.154558" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe18a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.154131" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.155014" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.154737" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.155476" 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-08-10T02:09:28.155189" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.155916" 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-08-10T02:09:28.155650" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.156773" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:28.156089" elapsed="0.000715"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.157287" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.156957" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.157815" 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-08-10T02:09:28.157498" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.158355" 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-08-10T02:09:28.158003" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.158854" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.158545" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.159377" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.159047" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.159885" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe18a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.159570" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:28.153289" elapsed="0.006690"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.160571" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:28.160162" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.160989" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:28.160749" 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-08-10T02:09:28.168941" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.168644" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.173414" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.173920" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.174020" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.169096" elapsed="0.004949"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.174505" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.174234" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.177985" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.174701" elapsed="0.003356"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.180623" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.178168" elapsed="0.002548"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.178141" 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-08-10T02:09:28.180947" 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-08-10T02:09:28.181257" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.181071" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.181048" elapsed="0.000336"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.181430" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:28.183707" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.183771" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.168313" elapsed="0.015489"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.186852" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.184577" elapsed="0.002324"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.184553" elapsed="0.002370"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.187481" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.187068" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.188053" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.187702" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.188128" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:28.188304" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.184097" elapsed="0.004232"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.188504" 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-08-10T02:09:28.167758" 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-08-10T02:09:28.196713" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.196417" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.201004" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.201155" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.201252" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.196867" elapsed="0.004410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.201717" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.201462" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.204107" 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-08-10T02:09:28.201903" elapsed="0.002255"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.205982" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.204226" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.204208" elapsed="0.001858"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.208762" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.208808" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.206212" elapsed="0.002619"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.210642" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.208909" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.208890" elapsed="0.001866"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.210814" elapsed="0.000047"/>
</return>
<msg time="2026-08-10T02:09:28.211092" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.211152" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.196014" 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-08-10T02:09:28.214204" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.211959" elapsed="0.002308"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.211935" elapsed="0.002362"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.215082" 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-08-10T02:09:28.214524" elapsed="0.000595"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.215857" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.215367" elapsed="0.000526"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.215962" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:28.216210" 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-08-10T02:09:28.211504" elapsed="0.004740"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.216658" elapsed="0.000543"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.195400" elapsed="0.021890"/>
</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-08-10T02:09:28.150016" elapsed="0.067382"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.140196" elapsed="0.077360"/>
</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-08-10T02:09:28.228772" 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-08-10T02:09:28.228907" 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-08-10T02:09:28.228634" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.229512" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1a90d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.229090" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.229977" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.229699" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.230469" 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-08-10T02:09:28.230180" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.230913" 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-08-10T02:09:28.230646" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.231949" 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-08-10T02:09:28.231086" elapsed="0.000895"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.232485" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.232138" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.233006" 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-08-10T02:09:28.232685" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.233536" 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-08-10T02:09:28.233197" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.234047" 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-08-10T02:09:28.233727" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.234578" 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-08-10T02:09:28.234239" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.235084" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1a90d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.234771" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:28.228290" elapsed="0.006889"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.235721" 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-08-10T02:09:28.235325" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.236138" 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-08-10T02:09:28.235899" 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-08-10T02:09:28.243941" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.243646" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.249642" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.250209" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.250315" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.244093" elapsed="0.006268"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.250902" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.250536" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.254467" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.251159" elapsed="0.003379"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.257078" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.254642" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.254614" elapsed="0.002594"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.257426" 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-08-10T02:09:28.257742" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.257553" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.257530" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.257889" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:28.260168" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.260230" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.243315" elapsed="0.016946"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.263151" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.261044" elapsed="0.002152"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.261020" elapsed="0.002197"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.263777" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.263380" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.264311" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.263963" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.264405" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:28.264583" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.260583" elapsed="0.004030"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.264765" 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-08-10T02:09:28.242762" elapsed="0.022452"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.273197" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.272882" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.278610" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.278851" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.278953" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.273372" elapsed="0.005606"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.279412" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.279139" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.281825" 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-08-10T02:09:28.279607" elapsed="0.002270"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.283731" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.281950" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.281929" elapsed="0.001876"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.286598" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.286666" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.283944" elapsed="0.002762"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.289203" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.286830" elapsed="0.002450"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.286804" elapsed="0.002509"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.289384" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:28.289657" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.289717" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.272493" elapsed="0.017255"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.292757" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.290541" elapsed="0.002278"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.290516" elapsed="0.002333"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.293634" 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-08-10T02:09:28.293050" elapsed="0.000622"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.294422" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.293893" elapsed="0.000566"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.294528" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.294776" 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-08-10T02:09:28.290061" elapsed="0.004751"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.295027" elapsed="0.000572"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.271826" elapsed="0.023863"/>
</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-08-10T02:09:28.225034" elapsed="0.070737"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.217892" elapsed="0.078046"/>
</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-08-10T02:09:28.313815" 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-08-10T02:09:28.314094" 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-08-10T02:09:28.313572" elapsed="0.000564"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.315094" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.314426" elapsed="0.000708"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.315906" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.315501" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.316583" 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-08-10T02:09:28.316158" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.317210" 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-08-10T02:09:28.316831" elapsed="0.000414"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.318866" 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-08-10T02:09:28.317484" elapsed="0.001414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.319436" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.319065" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.319953" 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-08-10T02:09:28.319634" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.320485" 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-08-10T02:09:28.320145" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.320993" 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-08-10T02:09:28.320681" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.321591" 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-08-10T02:09:28.321241" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.322128" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1ab560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.321790" 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-08-10T02:09:28.313048" elapsed="0.009181"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.322877" 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-08-10T02:09:28.322396" elapsed="0.000512"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.323302" 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-08-10T02:09:28.323058" elapsed="0.000466"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.331277" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.330963" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.336825" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.337526" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.337687" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.331467" elapsed="0.006248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.338171" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.337879" elapsed="0.000338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.341781" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.338399" 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-08-10T02:09:28.344505" elapsed="0.000054"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.341983" elapsed="0.002637"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.341949" elapsed="0.002707"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.344862" 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-08-10T02:09:28.345175" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.344988" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.344965" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.345323" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:09:28.347661" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.347724" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.330643" elapsed="0.017113"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.350839" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.348554" elapsed="0.002332"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.348529" elapsed="0.002379"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.351473" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.351055" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.352015" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.351660" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.352090" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:28.352267" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.348063" elapsed="0.004229"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.352466" 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-08-10T02:09:28.330031" elapsed="0.022904"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.361325" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.360906" elapsed="0.000481"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.366859" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.369170" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.369288" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.361568" elapsed="0.007747"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.369755" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.369496" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.372042" 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-08-10T02:09:28.369972" elapsed="0.002160"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.374035" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.372202" elapsed="0.001886"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.372183" elapsed="0.001927"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.377781" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.377845" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.374254" elapsed="0.003623"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.380472" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.378035" elapsed="0.002516"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.378008" elapsed="0.002576"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.380632" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:28.380904" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.380965" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.360363" elapsed="0.020633"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.384018" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.381784" elapsed="0.002298"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.381759" elapsed="0.002353"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.384902" 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-08-10T02:09:28.384317" elapsed="0.000623"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.385689" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.385168" elapsed="0.000559"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.385796" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.386069" 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-08-10T02:09:28.381296" elapsed="0.004811"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.386325" elapsed="0.000570"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.359438" elapsed="0.027545"/>
</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-08-10T02:09:28.308124" elapsed="0.078938"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.296309" elapsed="0.090926"/>
</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-08-10T02:09:28.400696" 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-08-10T02:09:28.400838" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.400558" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.401421" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1bc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.401017" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.401900" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.401599" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.402362" 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-08-10T02:09:28.402078" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.402806" 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-08-10T02:09:28.402537" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.403738" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.402978" elapsed="0.000791"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.404255" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.403922" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.404829" 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-08-10T02:09:28.404505" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.405364" 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-08-10T02:09:28.405023" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.405901" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.405575" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.406426" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.406094" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.406936" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe1bc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.406620" 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-08-10T02:09:28.400211" elapsed="0.006821"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.407602" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:28.407176" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.408019" level="INFO">&lt;?xml version="1.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-08-10T02:09:28.407780" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.415831" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.415536" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.420984" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.421504" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.421605" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.415986" elapsed="0.005645"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.422059" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.421790" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.424598" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.422245" elapsed="0.002404"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.426511" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.424716" elapsed="0.001901"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.424698" elapsed="0.001961"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.426873" 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-08-10T02:09:28.427246" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.427057" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.427032" elapsed="0.000341"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.427420" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:28.429687" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.429749" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.415204" elapsed="0.014576"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.432892" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.430614" elapsed="0.002343"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.430589" elapsed="0.002399"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.433775" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.433191" elapsed="0.000621"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.434566" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.434055" elapsed="0.000548"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.434671" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:28.434920" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.430091" elapsed="0.004864"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.435192" 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-08-10T02:09:28.414641" elapsed="0.021220"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.444561" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.444238" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.449213" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.449387" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.449487" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.444715" elapsed="0.004797"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.449935" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.449668" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.452318" 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-08-10T02:09:28.450121" 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-08-10T02:09:28.454210" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.452456" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.452437" elapsed="0.001845"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.457037" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.457083" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.454437" elapsed="0.002669"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.459156" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.457183" elapsed="0.002051"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.457165" elapsed="0.002102"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.459315" elapsed="0.000078"/>
</return>
<msg time="2026-08-10T02:09:28.459628" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.459688" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.443843" elapsed="0.015876"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.462794" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.460562" elapsed="0.002295"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.460537" elapsed="0.002351"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.463678" 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-08-10T02:09:28.463093" elapsed="0.000623"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.464454" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.463942" elapsed="0.000549"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.464561" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.464808" 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-08-10T02:09:28.460071" elapsed="0.004772"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.465059" elapsed="0.000560"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.443201" elapsed="0.022508"/>
</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-08-10T02:09:28.396966" elapsed="0.068822"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.387794" elapsed="0.078190"/>
</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-08-10T02:09:28.479039" 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-08-10T02:09:28.479170" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.478903" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.479752" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fd30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.479367" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.480204" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.479930" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.480665" 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-08-10T02:09:28.480396" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.481105" 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-08-10T02:09:28.480838" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.481874" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.481276" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.482600" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.482059" elapsed="0.000584"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.483121" 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-08-10T02:09:28.482797" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.483664" 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-08-10T02:09:28.483320" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.484168" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.483856" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.484706" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.484381" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.485261" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9fd30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.484941" 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-08-10T02:09:28.478574" elapsed="0.006802"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.485920" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:28.485525" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.486353" level="INFO">&lt;?xml version="1.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-08-10T02:09:28.486099" 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-08-10T02:09:28.494151" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.493851" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.498964" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.499470" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.499571" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.494305" elapsed="0.005291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.500004" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.499753" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.502555" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.500189" elapsed="0.002419"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.504421" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.502676" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.502658" elapsed="0.001852"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.504650" 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-08-10T02:09:28.504874" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.504739" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.504723" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.504978" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:28.506746" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.506814" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.493510" 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-08-10T02:09:28.509844" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.507622" elapsed="0.002285"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.507597" elapsed="0.002340"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.510720" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.510139" elapsed="0.000618"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.511556" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.511037" elapsed="0.000558"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.511664" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.511909" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.507141" elapsed="0.004803"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.512159" elapsed="0.000563"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.492939" elapsed="0.019872"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.522306" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.522010" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.528145" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.528298" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.528421" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.522479" elapsed="0.005968"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.528987" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.528642" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.532530" 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-08-10T02:09:28.529244" elapsed="0.003357"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.539589" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.532695" elapsed="0.006944"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.532670" elapsed="0.006992"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.542232" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.542278" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.539800" elapsed="0.002502"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.544087" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.542398" elapsed="0.001744"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.542379" elapsed="0.001787"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.544199" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:09:28.544410" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.544454" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.521593" elapsed="0.022883"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.546612" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.545014" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.544997" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.547219" 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-08-10T02:09:28.546824" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.547771" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.547423" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.547845" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:28.548020" 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-08-10T02:09:28.544688" elapsed="0.003357"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.548259" 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-08-10T02:09:28.520965" elapsed="0.027762"/>
</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-08-10T02:09:28.475301" elapsed="0.073482"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.466704" elapsed="0.082190"/>
</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-08-10T02:09:28.560111" 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-08-10T02:09:28.560255" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.559975" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.560845" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3699e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.560452" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.561301" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.561024" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.561797" 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-08-10T02:09:28.561496" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.562243" 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-08-10T02:09:28.561975" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.562979" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.562433" elapsed="0.000577"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.563506" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.563163" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.564198" 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-08-10T02:09:28.563697" elapsed="0.000543"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.564739" 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-08-10T02:09:28.564410" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.565240" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.564929" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.565782" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.565450" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.566296" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3699e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.565979" 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-08-10T02:09:28.559649" elapsed="0.006761"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.566938" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:28.566558" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.567375" level="INFO">&lt;?xml version="1.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-08-10T02:09:28.567117" 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-08-10T02:09:28.575143" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.574849" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.580490" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.580991" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.581091" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.575296" elapsed="0.005820"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.581547" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.581273" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.584078" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.581748" elapsed="0.002380"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.585989" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.584195" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.584177" 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-08-10T02:09:28.586221" 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-08-10T02:09:28.586463" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.586309" elapsed="0.000214"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.586293" elapsed="0.000265"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.586613" elapsed="0.000024"/>
</return>
<msg time="2026-08-10T02:09:28.588938" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.589001" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.574536" elapsed="0.014496"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.592059" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.589849" elapsed="0.002273"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.589824" elapsed="0.002328"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.592927" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.592376" elapsed="0.000588"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.593708" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.593185" elapsed="0.000560"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.593813" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.594059" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.589327" elapsed="0.004766"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.594309" elapsed="0.000556"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.573966" elapsed="0.020985"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.603778" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.603484" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.609129" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.609318" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.609439" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.603930" elapsed="0.005536"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.609910" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.609629" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.612280" 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-08-10T02:09:28.610097" 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-08-10T02:09:28.614164" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.612416" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.612396" elapsed="0.001839"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.616813" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.616859" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.614389" elapsed="0.002493"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.618768" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.616959" elapsed="0.001886"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.616940" elapsed="0.001939"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.618925" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:28.619193" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.619253" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.603094" elapsed="0.016190"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.622312" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.620061" elapsed="0.002337"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.620037" elapsed="0.002391"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.623183" 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-08-10T02:09:28.622632" elapsed="0.000589"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.623955" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.623467" elapsed="0.000524"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.624060" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:28.624303" 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-08-10T02:09:28.619605" 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-08-10T02:09:28.624579" elapsed="0.000531"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.602484" elapsed="0.022714"/>
</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-08-10T02:09:28.556411" elapsed="0.068863"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.549342" elapsed="0.076107"/>
</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-08-10T02:09:28.637916" 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-08-10T02:09:28.638048" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.637778" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.638668" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4a40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.638228" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.639212" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.638924" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.639680" 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-08-10T02:09:28.639408" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.640126" 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-08-10T02:09:28.639855" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.641175" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.640301" elapsed="0.000905"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.641737" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.641379" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.642253" 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-08-10T02:09:28.641933" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.642791" 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-08-10T02:09:28.642461" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.643290" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.642980" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.643818" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.643502" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.644430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4a40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.644089" 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-08-10T02:09:28.637428" elapsed="0.007099"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.645048" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:28.644671" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.645487" level="INFO">&lt;?xml version="1.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-08-10T02:09:28.645227" 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-08-10T02:09:28.653247" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.652952" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.658317" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.658948" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.659134" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.653418" elapsed="0.005752"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.659776" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.659419" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.663307" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.660035" elapsed="0.003371"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.665962" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.663501" elapsed="0.002552"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.663475" elapsed="0.002611"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.666281" 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-08-10T02:09:28.666619" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.666431" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.666408" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.666765" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:28.669035" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.669098" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.652637" elapsed="0.016493"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.671722" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.669966" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.669941" elapsed="0.001848"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.672327" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.671934" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.672879" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.672532" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.672954" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:28.673130" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.669450" elapsed="0.003704"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.673308" 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-08-10T02:09:28.652065" elapsed="0.021723"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.681545" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.681228" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.686309" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.686483" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.686581" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.681730" elapsed="0.004876"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.687015" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.686766" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.689433" 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-08-10T02:09:28.687200" 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-08-10T02:09:28.691371" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.689611" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.689577" elapsed="0.001866"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.694301" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.694365" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.691584" elapsed="0.002805"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.696839" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.694467" elapsed="0.002449"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.694449" elapsed="0.002501"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.696997" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:09:28.697263" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.697324" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.680853" elapsed="0.016525"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.700392" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.698149" elapsed="0.002307"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.698124" elapsed="0.002362"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.701245" 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-08-10T02:09:28.700692" elapsed="0.000591"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.702073" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.701531" elapsed="0.000579"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.702180" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.702456" 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-08-10T02:09:28.697693" elapsed="0.004799"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.702711" elapsed="0.000533"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.680228" elapsed="0.023103"/>
</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-08-10T02:09:28.634174" elapsed="0.069261"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.625791" elapsed="0.077797"/>
</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-08-10T02:09:28.715414" 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-08-10T02:09:28.715544" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.715257" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.716132" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.715724" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.716605" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.716310" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.717052" 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-08-10T02:09:28.716784" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.717512" 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-08-10T02:09:28.717227" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.718606" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.717728" elapsed="0.000909"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.719126" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.718794" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.719710" 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-08-10T02:09:28.719385" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.720229" 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-08-10T02:09:28.719904" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.720759" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.720438" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.721269" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.720953" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.721854" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec034f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.721481" 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-08-10T02:09:28.714929" elapsed="0.007025"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.722501" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:28.722101" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.722920" level="INFO">&lt;?xml version="1.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-08-10T02:09:28.722680" 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-08-10T02:09:28.730778" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.730470" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.735921" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.736447" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.736549" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.730933" elapsed="0.005641"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.736987" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.736735" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.739744" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.737175" 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-08-10T02:09:28.741625" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.739865" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.739847" elapsed="0.001906"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.741894" 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-08-10T02:09:28.742117" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.741984" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.741968" elapsed="0.000223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.742223" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:28.743852" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.743898" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.730137" elapsed="0.013784"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.746065" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.744481" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.744464" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.746690" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.746276" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.747220" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.746875" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.747293" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:28.747489" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.744133" elapsed="0.003381"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.747669" 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-08-10T02:09:28.729498" elapsed="0.018617"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.755990" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.755690" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.761003" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.761156" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.761264" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.756146" elapsed="0.005144"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.761750" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.761476" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.763954" 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-08-10T02:09:28.761939" elapsed="0.002065"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.765851" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.764071" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.764052" elapsed="0.001871"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.768771" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.768818" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.766063" elapsed="0.002778"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.770743" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.768916" elapsed="0.001911"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.768898" elapsed="0.001962"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.770955" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:28.771228" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.771289" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.755293" elapsed="0.016027"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.774323" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.772101" elapsed="0.002306"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.772076" elapsed="0.002362"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.775194" 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-08-10T02:09:28.774642" elapsed="0.000590"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.775978" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.775481" elapsed="0.000534"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.776084" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.776330" 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-08-10T02:09:28.771643" elapsed="0.004747"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.776611" elapsed="0.000537"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.754685" elapsed="0.022550"/>
</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-08-10T02:09:28.711680" elapsed="0.065632"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.703906" elapsed="0.073587"/>
</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-08-10T02:09:28.789995" 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-08-10T02:09:28.790126" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.789860" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.790752" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1a98a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.790310" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.791211" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.790934" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.791676" 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-08-10T02:09:28.791407" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.792121" 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-08-10T02:09:28.791854" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.793198" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.792295" elapsed="0.000934"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.793769" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.793402" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.794286" 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-08-10T02:09:28.793966" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.794821" 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-08-10T02:09:28.794498" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.795320" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.795011" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.795849" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.795534" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.796422" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1a98a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.796085" 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-08-10T02:09:28.789523" elapsed="0.006997"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.797049" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:28.796668" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.797519" level="INFO">&lt;?xml version="1.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-08-10T02:09:28.797227" 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-08-10T02:09:28.805220" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.804924" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.810575" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.811056" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.811157" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.805391" elapsed="0.005791"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.811612" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.811359" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.818186" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.811798" elapsed="0.006468"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.820814" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.818383" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.818355" elapsed="0.002583"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.821145" 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-08-10T02:09:28.821494" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.821271" elapsed="0.000296"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.821248" elapsed="0.000351"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.821644" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:28.823899" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.823962" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.804612" elapsed="0.019381"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.828640" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.824821" elapsed="0.003865"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.824797" elapsed="0.003911"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.829250" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.828853" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.829821" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.829463" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.829896" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:28.830071" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.824358" elapsed="0.005738"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.830249" 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-08-10T02:09:28.804044" elapsed="0.026668"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.838488" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.838175" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.843642" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.843803" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.843911" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.838644" elapsed="0.005292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.844365" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.844095" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.846576" 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-08-10T02:09:28.844554" elapsed="0.002073"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.848442" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.846694" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.846676" elapsed="0.001836"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.851769" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.851832" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.848649" 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-08-10T02:09:28.854364" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.851968" elapsed="0.002475"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.851943" elapsed="0.002533"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.854522" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:09:28.854875" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.854935" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.837801" elapsed="0.017165"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.858012" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.855749" elapsed="0.002326"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.855724" elapsed="0.002381"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.858931" 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-08-10T02:09:28.858307" elapsed="0.000662"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.859706" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.859192" elapsed="0.000551"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.859812" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:28.860056" 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-08-10T02:09:28.855263" elapsed="0.004827"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.860306" elapsed="0.000560"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.837135" elapsed="0.023819"/>
</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-08-10T02:09:28.786217" elapsed="0.074814"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.777856" elapsed="0.083327"/>
</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-08-10T02:09:28.875477" 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-08-10T02:09:28.875612" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.875306" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.876178" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1aa2a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.875791" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.876653" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.876375" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.877095" 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-08-10T02:09:28.876828" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.877593" 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-08-10T02:09:28.877268" elapsed="0.000351"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.878304" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.877767" elapsed="0.000587"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.878838" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.878511" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.879369" 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-08-10T02:09:28.879028" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.879884" 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-08-10T02:09:28.879562" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.880399" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.880072" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.880905" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.880592" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.881444" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1aa2a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.881099" 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-08-10T02:09:28.874811" elapsed="0.006732"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.882072" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:28.881694" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.882551" level="INFO">&lt;?xml version="1.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-08-10T02:09:28.882292" 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-08-10T02:09:28.890288" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.889994" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.895659" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.896408" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.896563" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.890461" elapsed="0.006139"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.897172" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.896823" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.900900" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.897473" 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-08-10T02:09:28.903593" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.901067" elapsed="0.002617"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.901040" elapsed="0.002678"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.903913" 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-08-10T02:09:28.904219" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.904037" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.904014" elapsed="0.000309"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.904392" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:28.906699" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.906753" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.889682" elapsed="0.017094"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.908893" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.907314" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.907296" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.909552" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.909103" elapsed="0.000477"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.910086" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.909739" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.910159" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:28.910353" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.906985" elapsed="0.003394"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.910534" 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-08-10T02:09:28.889064" 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-08-10T02:09:28.918796" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.918503" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.923819" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.923970" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:28.924066" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.918949" elapsed="0.005143"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.924523" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.924249" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.926856" 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-08-10T02:09:28.924710" elapsed="0.002217"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.929488" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.927020" elapsed="0.002536"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.926995" elapsed="0.002592"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.933126" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:28.933190" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:28.929780" elapsed="0.003441"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:28.935734" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.933327" elapsed="0.002484"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.933302" elapsed="0.002542"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:28.935891" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:28.936156" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:28.936216" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:28.918113" elapsed="0.018134"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.939296" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.937025" elapsed="0.002329"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.937001" elapsed="0.002376"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.939921" 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-08-10T02:09:28.939526" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.940470" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.940107" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.940545" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:28.940721" 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-08-10T02:09:28.936567" elapsed="0.004179"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.940900" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:28.917504" elapsed="0.023886"/>
</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-08-10T02:09:28.871529" elapsed="0.069922"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.861633" elapsed="0.079979"/>
</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-08-10T02:09:28.963776" 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-08-10T02:09:28.963933" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.963632" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:28.964587" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0344f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:28.964117" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.965043" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:28.964766" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.965515" 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-08-10T02:09:28.965219" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:28.965958" 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-08-10T02:09:28.965691" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:28.966887" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.966132" elapsed="0.000785"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.967419" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.967071" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.967931" 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-08-10T02:09:28.967614" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.968459" 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-08-10T02:09:28.968120" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.968958" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:28.968650" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.969512" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:28.969149" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.970021" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0344f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:28.969706" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:28.963269" elapsed="0.006847"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.970665" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:28.970262" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.971086" level="INFO">&lt;?xml version="1.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-08-10T02:09:28.970845" 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-08-10T02:09:28.979044" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:28.978743" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:28.983873" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:28.984456" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:28.984571" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:28.979200" elapsed="0.005397"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.985007" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.984755" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.987546" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:28.985192" elapsed="0.002406"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:28.989522" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-08-10T02:09:28.987669" elapsed="0.001967"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.987650" elapsed="0.002029"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:28.989895" 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-08-10T02:09:28.990201" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:28.990019" elapsed="0.000253"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:28.989997" elapsed="0.000306"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.990372" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:28.992643" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:28.992706" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:28.978423" elapsed="0.014315"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:28.995770" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:28.993550" elapsed="0.002283"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:28.993526" elapsed="0.002336"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.996649" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.996069" elapsed="0.000617"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:28.997444" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:28.996909" elapsed="0.000574"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:28.997552" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:28.997799" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:28.993030" elapsed="0.004804"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:28.998047" 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-08-10T02:09:28.977850" elapsed="0.020847"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.007463" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.007108" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.013187" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.013417" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.013520" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.007617" elapsed="0.005935"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.014161" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.013815" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.017513" 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-08-10T02:09:29.014445" 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-08-10T02:09:29.020126" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.017679" elapsed="0.002515"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.017654" elapsed="0.002570"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.023607" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.023653" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.020438" elapsed="0.003238"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.025479" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.023752" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.023734" elapsed="0.001824"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.025591" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.025782" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.025825" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.006733" elapsed="0.019115"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.027985" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.026404" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.026386" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.028612" 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-08-10T02:09:29.028195" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.029147" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.028799" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.029223" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:09:29.029431" 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-08-10T02:09:29.026060" elapsed="0.003397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.029619" 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-08-10T02:09:29.006105" elapsed="0.023959"/>
</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-08-10T02:09:28.948892" elapsed="0.081226"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:28.941858" elapsed="0.088374"/>
</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-08-10T02:09:29.041286" 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-08-10T02:09:29.041434" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:29.041124" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.042013" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369fd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.041614" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.042531" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.042233" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.042988" 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-08-10T02:09:29.042710" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.043452" 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-08-10T02:09:29.043164" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.044434" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:29.043626" elapsed="0.000839"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.044947" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.044619" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.045512" 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-08-10T02:09:29.045141" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.046030" 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-08-10T02:09:29.045706" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.046555" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.046220" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.047061" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.046746" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.047586" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec369fd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.047253" 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-08-10T02:09:29.040793" elapsed="0.006889"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.048203" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:29.047827" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.048642" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&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-08-10T02:09:29.048397" 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-08-10T02:09:29.056355" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.056044" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.061645" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.062129" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.062272" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.056510" elapsed="0.005788"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.062737" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.062484" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.065285" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.062922" elapsed="0.002440"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.067180" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.065432" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.065413" elapsed="0.001857"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.067425" 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-08-10T02:09:29.067650" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.067515" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.067500" elapsed="0.000223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.067754" elapsed="0.000013"/>
</return>
<msg time="2026-08-10T02:09:29.069426" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.069471" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.055732" elapsed="0.013762"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.072518" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.070280" elapsed="0.002301"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.070255" elapsed="0.002356"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.073410" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.072813" elapsed="0.000635"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.074165" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.073677" elapsed="0.000524"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.074269" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:29.074541" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.069824" elapsed="0.004753"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.074796" elapsed="0.000559"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.055159" elapsed="0.020288"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.085075" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.084781" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.090866" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.091078" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.091213" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.085243" elapsed="0.006006"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.091852" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.091503" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.095171" 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-08-10T02:09:29.092109" elapsed="0.003188"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.097869" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.095419" elapsed="0.002518"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.095391" elapsed="0.002577"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.101808" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.101854" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.098157" elapsed="0.003720"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.103688" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.101953" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.101936" elapsed="0.001831"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.103800" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:09:29.103992" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.104035" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.084404" elapsed="0.019654"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.106218" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.104618" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.104600" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.106843" 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-08-10T02:09:29.106446" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.107396" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.107030" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.107471" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.107648" 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-08-10T02:09:29.104270" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.107827" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.083773" elapsed="0.024501"/>
</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-08-10T02:09:29.037520" elapsed="0.070825"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.030512" elapsed="0.077944"/>
</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-08-10T02:09:29.119407" 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-08-10T02:09:29.119536" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:29.119253" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.120105" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2e7a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.119715" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.120576" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.120281" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.121018" 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-08-10T02:09:29.120751" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.121518" 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-08-10T02:09:29.121213" elapsed="0.000331"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.122475" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:29.121694" elapsed="0.000812"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.122989" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.122662" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.123563" 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-08-10T02:09:29.123222" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.124079" 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-08-10T02:09:29.123754" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.124601" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.124270" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.125112" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.124797" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.125675" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2e7a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.125353" 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-08-10T02:09:29.118925" elapsed="0.006847"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.126297" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:29.125918" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.126744" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:29.126495" 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-08-10T02:09:29.134495" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.134181" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.139649" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.140133" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.140233" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.134648" elapsed="0.005610"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.140694" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.140442" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.143249" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.140881" elapsed="0.002419"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.145119" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.143385" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.143365" elapsed="0.001877"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.145408" 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-08-10T02:09:29.145686" elapsed="0.000079"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.145499" elapsed="0.000314"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.145482" elapsed="0.000363"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.145891" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:29.148161" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.148223" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.133868" elapsed="0.014387"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.153227" elapsed="0.000049"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.149031" elapsed="0.004376"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.149006" elapsed="0.004458"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.155059" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.153926" elapsed="0.001197"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.156623" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.155765" elapsed="0.000918"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.156798" elapsed="0.000074"/>
</return>
<msg time="2026-08-10T02:09:29.157252" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.148572" elapsed="0.008743"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.157713" elapsed="0.000946"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.133292" elapsed="0.025517"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.170699" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.170379" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.176224" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.176470" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.176578" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.170863" elapsed="0.005741"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.177023" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.176768" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.179564" 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-08-10T02:09:29.177225" elapsed="0.002390"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.181485" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.179690" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.179670" elapsed="0.001890"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.184320" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.184385" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.181702" elapsed="0.002707"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.186580" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.184487" elapsed="0.002172"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.184468" elapsed="0.002225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.186740" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:29.187013" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.187074" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.169980" elapsed="0.017125"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.190234" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.187995" elapsed="0.002302"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.187970" elapsed="0.002358"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.191117" 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-08-10T02:09:29.190556" elapsed="0.000599"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.191914" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.191411" elapsed="0.000540"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.192021" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:29.192270" 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-08-10T02:09:29.187528" elapsed="0.004777"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.192550" elapsed="0.000540"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.169287" elapsed="0.023911"/>
</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-08-10T02:09:29.115645" elapsed="0.077635"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.108685" elapsed="0.084793"/>
</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-08-10T02:09:29.205845" 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-08-10T02:09:29.206010" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:29.205698" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.206633" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee48ac00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.206192" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.207099" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.206814" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.207572" 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-08-10T02:09:29.207275" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.208014" 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-08-10T02:09:29.207746" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.209029" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:29.208188" elapsed="0.000871"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.209610" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.209246" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.210127" 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-08-10T02:09:29.209803" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.210663" 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-08-10T02:09:29.210319" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.211168" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:29.210856" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.211703" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:29.211381" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.212213" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ee48ac00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.211897" 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-08-10T02:09:29.205367" elapsed="0.006999"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.212896" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:29.212515" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.213363" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:29.213074" 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-08-10T02:09:29.221146" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.220820" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.226468" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.227087" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.227188" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.221302" elapsed="0.005912"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.227650" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.227399" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.230565" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.227837" elapsed="0.002800"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.233193" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.230732" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.230706" elapsed="0.002618"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.233546" 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-08-10T02:09:29.233858" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.233670" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.233647" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.234004" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:29.236284" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.236368" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.220501" elapsed="0.015901"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.239415" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.237176" elapsed="0.002304"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.237151" elapsed="0.002360"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.240269" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.239714" elapsed="0.000592"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.241144" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.240609" elapsed="0.000577"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.241256" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:29.241538" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.236698" elapsed="0.004883"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.241805" 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-08-10T02:09:29.219920" elapsed="0.022336"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.250095" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.249799" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.254748" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.254898" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.254995" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.250249" elapsed="0.004771"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.255452" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.255180" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.257833" 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-08-10T02:09:29.255637" elapsed="0.002247"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.259712" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.257951" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.257933" elapsed="0.001850"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.262913" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.262977" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.259921" 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-08-10T02:09:29.265537" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.263116" elapsed="0.002504"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.263090" elapsed="0.002563"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.265699" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:29.265969" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.266030" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.249414" elapsed="0.016648"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.269081" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.266848" elapsed="0.002297"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.266824" elapsed="0.002352"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.269950" 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-08-10T02:09:29.269400" elapsed="0.000587"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.270729" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.270210" elapsed="0.000555"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.270833" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:29.271078" 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-08-10T02:09:29.266383" elapsed="0.004730"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.271429" elapsed="0.000547"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.248748" elapsed="0.023318"/>
</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-08-10T02:09:29.202090" elapsed="0.070052"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.193911" elapsed="0.078383"/>
</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-08-10T02:09:29.283555" 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-08-10T02:09:29.283687" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:29.283417" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.284274" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d710&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.283867" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.284751" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.284475" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.285222" 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-08-10T02:09:29.284926" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.285682" 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-08-10T02:09:29.285413" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.288751" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:29.285854" elapsed="0.002930"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.289286" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.288940" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.289816" 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-08-10T02:09:29.289499" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.290328" 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-08-10T02:09:29.290007" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.290849" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.290536" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.291376" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.291043" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.291894" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9d710&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.291576" 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-08-10T02:09:29.283073" elapsed="0.008917"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.292580" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:29.292136" elapsed="0.000475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.293002" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:29.292762" 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-08-10T02:09:29.300827" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.300530" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.305815" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.306325" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.306466" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.300981" elapsed="0.005511"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.307052" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.306684" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.310618" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.307310" elapsed="0.003380"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.313236" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.310787" elapsed="0.002543"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.310761" elapsed="0.002626"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.313584" 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-08-10T02:09:29.313895" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.313709" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.313686" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.314042" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:29.316296" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.316380" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.300198" elapsed="0.016216"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.318936" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.317210" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.317185" elapsed="0.001818"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.319559" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.319147" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.320094" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.319745" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.320168" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.320361" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.316713" elapsed="0.003675"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.320543" 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-08-10T02:09:29.299644" elapsed="0.021347"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.328760" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.328458" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.334578" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.334767" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.334867" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.328915" elapsed="0.005977"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.335299" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.335049" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.337702" 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-08-10T02:09:29.335508" 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-08-10T02:09:29.339579" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.337820" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.337802" elapsed="0.001847"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.342725" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.342790" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.339787" 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-08-10T02:09:29.345316" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.342931" elapsed="0.002486"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.342905" elapsed="0.002545"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.345497" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:29.345764" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.345825" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.328036" elapsed="0.017820"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.348849" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.346636" elapsed="0.002276"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.346611" elapsed="0.002332"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.349737" 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-08-10T02:09:29.349163" elapsed="0.000612"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.350507" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.349999" elapsed="0.000544"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.350612" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:29.350857" 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-08-10T02:09:29.346154" elapsed="0.004738"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.351107" elapsed="0.000558"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.327429" elapsed="0.024323"/>
</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-08-10T02:09:29.279835" elapsed="0.071993"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.272665" elapsed="0.079312"/>
</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-08-10T02:09:29.363289" 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-08-10T02:09:29.363443" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:29.363156" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.364006" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e5120&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.363622" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.364661" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.364184" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.368019" 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-08-10T02:09:29.364850" elapsed="0.003197"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.368521" 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-08-10T02:09:29.368227" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.369607" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:29.368702" elapsed="0.000936"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.370141" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.369800" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.370672" 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-08-10T02:09:29.370351" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.371189" 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-08-10T02:09:29.370864" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.371722" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:29.371406" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.372226" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:29.371914" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.372753" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e5120&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.372436" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:29.362828" elapsed="0.010023"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.373443" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:29.373018" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.373866" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&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-08-10T02:09:29.373626" 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-08-10T02:09:29.381791" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.381484" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.387072" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.387760" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.387914" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.381946" elapsed="0.006004"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.388630" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.388249" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.392201" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.388891" elapsed="0.003380"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.394841" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.392398" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.392368" elapsed="0.002605"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.395174" 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-08-10T02:09:29.395514" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.395298" elapsed="0.000288"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.395275" elapsed="0.000343"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.395663" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:29.397936" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.397981" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.381152" elapsed="0.016851"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.400149" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.398568" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.398550" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.400777" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.400380" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.401325" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.400974" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.401417" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.401595" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.398217" 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-08-10T02:09:29.401775" 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-08-10T02:09:29.380560" elapsed="0.021671"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.410135" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.409824" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.415328" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.415505" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.415603" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.410290" elapsed="0.005338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.416042" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.415791" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.418911" 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-08-10T02:09:29.416228" elapsed="0.002805"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.421617" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.419131" elapsed="0.002554"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.419105" elapsed="0.002610"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.425512" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.425576" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.421909" elapsed="0.003699"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.428101" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.425716" elapsed="0.002462"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.425690" elapsed="0.002521"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.428258" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:29.428550" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.428610" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.409369" elapsed="0.019273"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.431090" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.429462" elapsed="0.001673"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.429437" elapsed="0.001720"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.431715" 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-08-10T02:09:29.431301" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.432250" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.431901" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.432324" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:09:29.432520" 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-08-10T02:09:29.428978" 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-08-10T02:09:29.432699" 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-08-10T02:09:29.408696" elapsed="0.024458"/>
</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-08-10T02:09:29.359569" elapsed="0.073640"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.352301" elapsed="0.081047"/>
</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-08-10T02:09:29.444369" 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-08-10T02:09:29.444535" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.444211" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.445156" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0349f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.444718" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.445633" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.445355" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.446075" 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-08-10T02:09:29.445811" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.446543" 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-08-10T02:09:29.446251" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.447613" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.446717" elapsed="0.000927"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.448131" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.447799" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.448713" 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-08-10T02:09:29.448385" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.449246" 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-08-10T02:09:29.448919" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.449767" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.449455" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.450276" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.449961" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.450804" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0349f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.450488" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:29.443881" elapsed="0.007019"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.451441" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:29.451046" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.451859" level="INFO">&lt;?xml version="1.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-08-10T02:09:29.451621" 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-08-10T02:09:29.459646" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.459328" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.464828" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.465354" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.465458" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.459800" elapsed="0.005683"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.465894" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.465644" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.468449" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.466081" 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-08-10T02:09:29.470354" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.468573" elapsed="0.001884"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.468551" elapsed="0.001934"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.470628" 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-08-10T02:09:29.470851" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.470718" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.470701" elapsed="0.000223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.470956" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:29.472577" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.472622" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.459014" elapsed="0.013631"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.475378" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.473218" elapsed="0.002226"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.473200" elapsed="0.002274"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.476228" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.475676" elapsed="0.000590"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.477018" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.476512" elapsed="0.000542"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.477122" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:29.477393" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.472857" elapsed="0.004573"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.477646" elapsed="0.000530"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.458462" elapsed="0.019803"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.487728" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.487427" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.491970" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.492282" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.492413" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.487881" elapsed="0.004559"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.493023" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.492618" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.496118" 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-08-10T02:09:29.493287" elapsed="0.002903"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.498758" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.496284" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.496258" elapsed="0.002598"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.502611" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.502658" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.499047" elapsed="0.003634"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.504482" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.502758" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.502739" elapsed="0.001822"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.504630" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:29.504825" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.507877" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.487034" elapsed="0.020927"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.510227" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.508629" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.508611" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.510878" 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-08-10T02:09:29.510464" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.511435" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.511067" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.511513" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.511690" 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-08-10T02:09:29.508256" 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-08-10T02:09:29.511872" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.486422" elapsed="0.025897"/>
</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-08-10T02:09:29.440594" elapsed="0.071800"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.433748" elapsed="0.078758"/>
</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-08-10T02:09:29.523535" 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-08-10T02:09:29.523727" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.523367" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.524415" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2e7f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.523925" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.524927" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.524602" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.525406" 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-08-10T02:09:29.525111" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.525861" 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-08-10T02:09:29.525586" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.527066" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.526038" elapsed="0.001060"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.527625" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.527258" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.528150" 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-08-10T02:09:29.527824" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.528701" 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-08-10T02:09:29.528362" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.529233" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.528914" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.529775" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.529451" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.530383" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2e7f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.530030" 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-08-10T02:09:29.522976" elapsed="0.007510"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.531036" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:29.530638" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.531487" level="INFO">&lt;?xml version="1.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-08-10T02:09:29.531219" 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-08-10T02:09:29.539294" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.538986" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.545046" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.545662" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.545767" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.539468" elapsed="0.006324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.546203" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.545953" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.548761" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.546409" elapsed="0.002403"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.551263" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.548930" elapsed="0.002458"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.548906" elapsed="0.002520"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.551638" 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-08-10T02:09:29.551967" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.551769" elapsed="0.000272"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.551745" elapsed="0.000330"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.552121" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:09:29.554580" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.554646" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.538669" elapsed="0.016010"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.557948" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.555566" elapsed="0.002449"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.555538" elapsed="0.002509"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.558863" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.558259" elapsed="0.000644"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.559671" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.559135" elapsed="0.000575"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.559781" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:29.560042" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.555047" elapsed="0.005032"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.560306" elapsed="0.000632"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.538085" elapsed="0.022945"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.569395" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.569081" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.574168" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.574363" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.574486" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.569550" elapsed="0.004962"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.574958" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.574693" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.577193" 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-08-10T02:09:29.575145" 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-08-10T02:09:29.579069" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.577315" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.577295" elapsed="0.001847"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.582323" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.582417" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.579282" elapsed="0.003170"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.585145" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.582564" elapsed="0.002663"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.582537" elapsed="0.002725"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.585311" elapsed="0.000065"/>
</return>
<msg time="2026-08-10T02:09:29.585625" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.585688" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.568685" elapsed="0.017036"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.589068" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.586565" elapsed="0.002570"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.586538" elapsed="0.002630"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.589905" 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-08-10T02:09:29.589470" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.590460" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.590090" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.590536" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.590717" 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-08-10T02:09:29.586047" elapsed="0.004695"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.590897" 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-08-10T02:09:29.568043" elapsed="0.023329"/>
</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-08-10T02:09:29.519678" elapsed="0.071753"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.512797" elapsed="0.078767"/>
</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-08-10T02:09:29.602725" 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-08-10T02:09:29.602879" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.602580" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.603515" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2df80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.603061" elapsed="0.000482"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.603976" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.603697" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.604440" 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-08-10T02:09:29.604154" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.604903" 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-08-10T02:09:29.604623" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.605843" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.605077" elapsed="0.000796"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.606380" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.606030" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.606891" 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-08-10T02:09:29.606575" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.607421" 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-08-10T02:09:29.607083" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.607921" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.607613" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.608447" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.608114" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.608970" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2df80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.608643" 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-08-10T02:09:29.602230" elapsed="0.006835"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.609611" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:29.609212" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.610072" level="INFO">&lt;?xml version="1.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-08-10T02:09:29.609830" 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-08-10T02:09:29.617869" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.617570" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.623214" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.623890" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.624052" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.618024" elapsed="0.006066"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.624722" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.624327" elapsed="0.000481"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.628739" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.625019" elapsed="0.003826"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.631574" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.628950" elapsed="0.002720"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.628923" elapsed="0.002782"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.631915" 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-08-10T02:09:29.632239" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.632044" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.632021" elapsed="0.000349"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.632419" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:09:29.634446" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.634490" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.617239" elapsed="0.017274"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.636647" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.635049" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.635031" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.637266" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.636872" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.637859" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.637507" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.637934" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.638110" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.634723" elapsed="0.003412"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.638290" 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-08-10T02:09:29.616672" elapsed="0.022084"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.649570" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.649257" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.654560" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.654796" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.654930" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.649724" elapsed="0.005241"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.655559" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.655187" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.658642" 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-08-10T02:09:29.655817" elapsed="0.002896"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.661279" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.658806" elapsed="0.002563"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.658781" elapsed="0.002619"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.665322" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.665412" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.661598" 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-08-10T02:09:29.667507" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.665561" elapsed="0.002002"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.665528" elapsed="0.002058"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.667624" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:29.667817" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.667859" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.648882" elapsed="0.019000"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.670019" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.668441" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.668424" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.670653" 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-08-10T02:09:29.670234" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.671188" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.670841" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.671264" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.671459" 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-08-10T02:09:29.668093" elapsed="0.003436"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.671689" 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-08-10T02:09:29.648184" elapsed="0.023955"/>
</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-08-10T02:09:29.598770" elapsed="0.073425"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.591886" elapsed="0.080418"/>
</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-08-10T02:09:29.683091" 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-08-10T02:09:29.683220" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.682948" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.683835" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe05e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.683419" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.684286" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.684014" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.684763" 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-08-10T02:09:29.684481" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.685206" 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-08-10T02:09:29.684939" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.686096" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.685395" elapsed="0.000731"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.686629" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.686282" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.687138" 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-08-10T02:09:29.686822" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.687668" 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-08-10T02:09:29.687344" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.688164" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.687856" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.688687" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.688372" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.689225" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe05e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.688909" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:29.682620" elapsed="0.006700"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.689866" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:29.689486" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.690283" level="INFO">&lt;?xml version="1.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-08-10T02:09:29.690045" 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-08-10T02:09:29.698411" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.698096" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.703545" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.704043" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.704144" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.698564" elapsed="0.005606"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.704595" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.704326" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.707134" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.704800" elapsed="0.002385"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.709051" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.707253" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.707234" elapsed="0.001906"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.709280" 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-08-10T02:09:29.709563" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.709423" elapsed="0.000191"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.709372" elapsed="0.000274"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.709696" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:29.711983" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.712045" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.697784" elapsed="0.014292"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.715086" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.712868" elapsed="0.002281"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.712844" elapsed="0.002336"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.715951" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.715402" elapsed="0.000586"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.716732" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.716207" elapsed="0.000562"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.716837" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:29.717081" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.712390" 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-08-10T02:09:29.717328" 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-08-10T02:09:29.697212" elapsed="0.020760"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.726848" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.726548" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.731686" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.731877" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.731976" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.727002" elapsed="0.005000"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.732435" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.732159" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.736643" 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-08-10T02:09:29.732624" elapsed="0.004090"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.738570" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.736790" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.736771" elapsed="0.001871"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.741562" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.741619" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.738783" elapsed="0.002876"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.744180" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.741789" elapsed="0.002468"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.741758" elapsed="0.002532"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.744364" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:29.744633" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.744712" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.726150" elapsed="0.018595"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.747764" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.745528" elapsed="0.002300"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.745503" elapsed="0.002355"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.748636" 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-08-10T02:09:29.748060" elapsed="0.000633"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.749462" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.748934" elapsed="0.000565"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.749568" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:09:29.749827" 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-08-10T02:09:29.745043" elapsed="0.004819"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.750079" elapsed="0.000568"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.725538" elapsed="0.025200"/>
</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-08-10T02:09:29.679382" elapsed="0.071433"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.672556" elapsed="0.078409"/>
</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-08-10T02:09:29.762695" 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-08-10T02:09:29.762825" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.762555" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.763432" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbecf90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.763003" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.763928" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.763650" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.764403" 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-08-10T02:09:29.764106" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.764879" 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-08-10T02:09:29.764579" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.765947" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.765053" elapsed="0.000925"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.766483" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.766134" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.766996" 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-08-10T02:09:29.766678" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.767528" 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-08-10T02:09:29.767185" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.768030" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.767718" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.768564" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.768225" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.769096" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbecf90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.768771" 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-08-10T02:09:29.762211" elapsed="0.006982"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.769745" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:29.769357" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.770162" level="INFO">&lt;?xml version="1.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-08-10T02:09:29.769923" 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-08-10T02:09:29.777956" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.777663" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.782934" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.783507" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.783671" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.778108" elapsed="0.005589"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.784155" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.783876" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.791596" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.784361" elapsed="0.007317"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.794260" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.791789" elapsed="0.002602"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.791760" elapsed="0.002666"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.794630" 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-08-10T02:09:29.794941" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.794755" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.794733" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.795087" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:29.797407" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.797471" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.777324" elapsed="0.020179"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.799749" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.798166" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.798149" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.800387" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.799966" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.800951" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.800573" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.801025" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.801200" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.797832" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.801490" 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-08-10T02:09:29.776766" elapsed="0.025192"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.809748" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.809445" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.815388" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.815556" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.815667" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.809904" elapsed="0.005795"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.816111" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.815859" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.818683" 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-08-10T02:09:29.816295" elapsed="0.002549"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.821432" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.818941" elapsed="0.002560"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.818915" elapsed="0.002618"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.825621" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.825685" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.821727" elapsed="0.003989"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.828184" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.825823" elapsed="0.002438"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.825798" elapsed="0.002496"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.828363" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:29.828681" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.828749" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.809050" elapsed="0.019730"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.831237" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.829570" elapsed="0.001712"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.829539" elapsed="0.001765"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.831871" 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-08-10T02:09:29.831470" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.832426" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.832058" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.832502" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.832700" 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-08-10T02:09:29.829079" elapsed="0.003646"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.832882" elapsed="0.000380"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.808390" elapsed="0.024935"/>
</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-08-10T02:09:29.758927" elapsed="0.074473"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.751295" elapsed="0.082235"/>
</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-08-10T02:09:29.844442" 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-08-10T02:09:29.844591" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.844279" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.845225" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.844794" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.845709" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.845423" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.846151" 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-08-10T02:09:29.845885" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.846620" 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-08-10T02:09:29.846326" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.847708" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.846795" elapsed="0.000945"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.848232" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.847898" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.848836" 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-08-10T02:09:29.848499" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.849371" 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-08-10T02:09:29.849031" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.849875" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.849564" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.850404" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.850069" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.850918" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe0630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.850601" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:29.843953" elapsed="0.007063"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.851558" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:29.851163" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.851974" level="INFO">&lt;?xml version="1.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-08-10T02:09:29.851738" 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-08-10T02:09:29.859698" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.859402" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.865585" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.866076" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.866178" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.859851" elapsed="0.006353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.866637" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.866384" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.869238" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.866824" 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-08-10T02:09:29.871127" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.869381" elapsed="0.001849"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.869360" 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-08-10T02:09:29.871418" 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-08-10T02:09:29.871655" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.871519" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.871503" elapsed="0.000228"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.871763" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:09:29.873468" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.873515" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.859069" elapsed="0.014474"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.876561" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.874350" elapsed="0.002296"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.874304" elapsed="0.002373"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.877457" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.876880" elapsed="0.000615"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.878206" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.877722" elapsed="0.000520"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.878310" elapsed="0.000061"/>
</return>
<msg time="2026-08-10T02:09:29.878584" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.873864" elapsed="0.004755"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.878832" elapsed="0.000553"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.858517" 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-08-10T02:09:29.890550" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.890112" elapsed="0.000475"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.896410" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.896580" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.896689" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.890766" elapsed="0.005949"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.897122" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.896873" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.899349" 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-08-10T02:09:29.897307" elapsed="0.002095"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.901235" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.899470" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.899452" elapsed="0.001853"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.904159" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.904206" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.901459" elapsed="0.002770"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.906614" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.904305" elapsed="0.002387"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.904287" elapsed="0.002539"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.906932" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:29.907207" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.907267" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.889591" elapsed="0.017707"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.910438" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.908089" elapsed="0.002415"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.908064" elapsed="0.002471"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.911299" 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-08-10T02:09:29.910742" elapsed="0.000618"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.912077" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.911588" elapsed="0.000526"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.912184" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:29.912457" 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-08-10T02:09:29.907628" elapsed="0.004865"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.912750" elapsed="0.000536"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:29.888717" elapsed="0.024682"/>
</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-08-10T02:09:29.840705" elapsed="0.072774"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.833828" elapsed="0.079802"/>
</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-08-10T02:09:29.931457" 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-08-10T02:09:29.931592" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.931299" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:29.932200" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2c720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:29.931774" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.932689" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:29.932398" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.933133" 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-08-10T02:09:29.932866" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:29.933594" 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-08-10T02:09:29.933307" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.934535" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.933767" elapsed="0.000798"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.935062" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.934730" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.935595" 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-08-10T02:09:29.935256" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.936111" 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-08-10T02:09:29.935786" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.936669" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:29.936301" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.937184" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:29.936865" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.937767" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2c720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:29.937442" 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-08-10T02:09:29.930951" elapsed="0.006914"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.938415" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:29.938012" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.938835" level="INFO">&lt;?xml version="1.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-08-10T02:09:29.938594" 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-08-10T02:09:29.946588" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.946271" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.951807" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.952492" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:29.952623" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.946744" elapsed="0.005906"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.953059" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.952810" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.955596" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.953246" elapsed="0.002402"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:29.957482" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:09:29.955725" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.955706" elapsed="0.001866"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:29.957713" 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-08-10T02:09:29.957937" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.957803" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:29.957786" elapsed="0.000223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.958041" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:29.959673" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:29.959718" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:29.945960" elapsed="0.013812"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.961936" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.960319" elapsed="0.001662"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.960301" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.962559" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.962147" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.963090" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.962745" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.963164" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:29.963358" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:29.959989" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.963541" 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-08-10T02:09:29.945405" elapsed="0.018581"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.971746" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:29.971449" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:29.976779" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:29.976931" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:29.977028" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:29.971900" elapsed="0.005153"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.977491" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:29.977214" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.979717" 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-08-10T02:09:29.977685" elapsed="0.002083"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.981597" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.979834" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.979816" elapsed="0.001852"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:29.984468" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:29.984602" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:29.981806" elapsed="0.002828"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:29.986582" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:29.984713" elapsed="0.001924"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.984694" elapsed="0.001966"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:29.986694" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:09:29.986883" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:29.986926" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:29.971057" elapsed="0.015891"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:29.989239" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:29.987513" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:29.987496" elapsed="0.001814"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.989961" 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-08-10T02:09:29.989538" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:29.990518" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:29.990151" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:29.990593" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:29.990772" 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-08-10T02:09:29.987160" elapsed="0.003638"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:29.990951" 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-08-10T02:09:29.970450" elapsed="0.020975"/>
</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-08-10T02:09:29.927452" elapsed="0.064033"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.913953" elapsed="0.077651"/>
</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-08-10T02:09:30.002618" 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-08-10T02:09:30.002763" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.002476" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.003405" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.002945" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.003868" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.003590" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.004312" 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-08-10T02:09:30.004045" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.004789" 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-08-10T02:09:30.004519" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.005783" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:30.004964" elapsed="0.000850"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.006299" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.005971" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.006832" 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-08-10T02:09:30.006514" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.007360" 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-08-10T02:09:30.007022" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.007861" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.007552" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.008385" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:30.008053" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.008912" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e6250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.008596" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:30.002129" elapsed="0.006877"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.009553" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:30.009154" elapsed="0.000475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.010026" level="INFO">&lt;?xml version="1.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-08-10T02:09:30.009783" 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-08-10T02:09:30.018746" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.018397" elapsed="0.000379"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.024467" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.025175" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.025291" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.018914" elapsed="0.006404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.025784" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.025514" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.028481" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.025984" elapsed="0.002554"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.030438" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.028621" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.028598" elapsed="0.001938"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.030688" 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-08-10T02:09:30.030914" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.030777" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.030761" elapsed="0.000227"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.031020" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:30.032700" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.032745" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.018020" elapsed="0.014748"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.035521" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.033323" elapsed="0.002261"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.033305" elapsed="0.002309"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.036408" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.035823" elapsed="0.000641"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.037265" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.036762" elapsed="0.000541"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.037398" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:30.037654" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.032992" 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-08-10T02:09:30.037912" elapsed="0.000573"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.017274" elapsed="0.021299"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.048467" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.048127" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.053113" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.053271" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.053395" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.048627" elapsed="0.004795"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.053994" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.053605" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.057392" 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-08-10T02:09:30.054255" elapsed="0.003210"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.060018" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.057561" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.057534" elapsed="0.002586"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.066530" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.066577" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.060317" elapsed="0.006283"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.068385" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.066678" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.066658" elapsed="0.001829"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.068522" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:09:30.068740" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.068785" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.047746" elapsed="0.021062"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.070952" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.069374" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.069355" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.071602" 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-08-10T02:09:30.071167" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.072143" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.071791" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.072219" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:30.072433" 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-08-10T02:09:30.069026" 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-08-10T02:09:30.072667" 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-08-10T02:09:30.047097" elapsed="0.026030"/>
</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-08-10T02:09:29.998837" elapsed="0.074347"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:29.991886" elapsed="0.081419"/>
</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-08-10T02:09:30.085623" 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-08-10T02:09:30.085777" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.085470" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.086439" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a570&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.085964" elapsed="0.000504"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.086909" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.086624" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.087382" 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-08-10T02:09:30.087089" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.087843" 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-08-10T02:09:30.087568" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.089050" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:30.088022" elapsed="0.001060"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.089599" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.089241" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.090115" 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-08-10T02:09:30.089796" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.090650" 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-08-10T02:09:30.090307" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.091150" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.090841" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.091676" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:30.091360" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.092184" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec36a570&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.091870" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:30.085076" elapsed="0.007203"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.092842" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:30.092455" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.093263" level="INFO">&lt;?xml version="1.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-08-10T02:09:30.093023" elapsed="0.000389"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.101087" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.100791" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.106431" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.106963" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.107064" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.101241" elapsed="0.005849"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.107521" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.107248" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.110266" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.107714" elapsed="0.002646"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.112880" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.110459" elapsed="0.002513"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.110433" elapsed="0.002572"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.113200" 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-08-10T02:09:30.113535" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.113324" elapsed="0.000288"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.113302" elapsed="0.000342"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.113688" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:30.115942" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.116004" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.100475" elapsed="0.015560"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.119071" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.116821" elapsed="0.002314"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.116796" elapsed="0.002369"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.119941" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.119387" elapsed="0.000590"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.120753" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.120273" elapsed="0.000506"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.120827" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:30.121003" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.116328" elapsed="0.004700"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.121182" 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-08-10T02:09:30.099880" elapsed="0.021764"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.129564" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.129250" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.134613" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.134962" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.135165" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.129717" elapsed="0.005496"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.135834" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.135548" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.138254" 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-08-10T02:09:30.136019" elapsed="0.002306"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.140871" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.138445" elapsed="0.002493"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.138418" elapsed="0.002550"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.144888" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.144952" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.141160" elapsed="0.003824"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.147492" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.145090" elapsed="0.002480"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.145064" elapsed="0.002539"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.147651" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:09:30.147916" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.147977" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.128878" elapsed="0.019130"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.150640" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.148814" elapsed="0.001871"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.148789" elapsed="0.001918"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.151244" 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-08-10T02:09:30.150851" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.151798" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.151449" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.151873" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:30.152048" 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-08-10T02:09:30.148303" elapsed="0.003769"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.152231" 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-08-10T02:09:30.128227" elapsed="0.024495"/>
</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-08-10T02:09:30.081041" elapsed="0.071736"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.073608" elapsed="0.079281"/>
</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-08-10T02:09:30.165634" 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-08-10T02:09:30.165763" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.165499" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.166359" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8a6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.165942" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.166851" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.166576" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.167296" 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-08-10T02:09:30.167028" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.167756" 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-08-10T02:09:30.167489" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.168656" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:30.167929" elapsed="0.000757"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.169167" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.168841" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.169700" 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-08-10T02:09:30.169377" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.170209" 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-08-10T02:09:30.169890" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.170723" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.170414" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.171225" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:30.170913" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.171756" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecb8a6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.171434" 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-08-10T02:09:30.165158" elapsed="0.006693"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.172417" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:30.171996" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.172837" level="INFO">&lt;?xml version="1.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-08-10T02:09:30.172597" 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-08-10T02:09:30.180525" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.180201" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.185843" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.186325" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.186491" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.180679" elapsed="0.005838"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.186923" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.186674" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.189602" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.187108" elapsed="0.002545"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.191459" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.189721" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.189702" elapsed="0.001846"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.191693" 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-08-10T02:09:30.191913" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.191782" elapsed="0.000182"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.191766" elapsed="0.000220"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.192018" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:30.194086" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.194148" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.179892" elapsed="0.014288"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.197358" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.194949" elapsed="0.002480"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.194924" elapsed="0.002537"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.198246" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.197676" elapsed="0.000608"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.199016" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.198531" elapsed="0.000521"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.199120" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:30.199390" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.194495" 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-08-10T02:09:30.199643" elapsed="0.000537"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.179326" elapsed="0.020939"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.210908" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.210608" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.217505" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.217679" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.217777" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.211059" elapsed="0.006742"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.218210" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.217963" elapsed="0.000291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.220445" 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-08-10T02:09:30.218412" elapsed="0.002226"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.222468" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.220711" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.220692" elapsed="0.001847"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.225693" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.225757" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.222677" elapsed="0.003111"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.228517" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.225895" elapsed="0.002700"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.225869" elapsed="0.002759"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.228675" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:09:30.228938" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.228997" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.210211" elapsed="0.018816"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.232009" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.229802" elapsed="0.002270"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.229777" elapsed="0.002324"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.232902" 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-08-10T02:09:30.232301" elapsed="0.000638"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.233676" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.233161" elapsed="0.000552"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.233781" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:30.234026" 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-08-10T02:09:30.229324" elapsed="0.004737"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.234276" elapsed="0.000557"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.209590" elapsed="0.025330"/>
</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-08-10T02:09:30.161921" elapsed="0.073077"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.153133" elapsed="0.082024"/>
</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-08-10T02:09:30.246498" 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-08-10T02:09:30.246666" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.246326" elapsed="0.000371"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.247284" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2c310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.246851" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.247773" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.247488" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.248226" 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-08-10T02:09:30.247952" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.248737" 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-08-10T02:09:30.248459" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.249693" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:30.248916" elapsed="0.000808"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.250215" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.249881" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.250796" 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-08-10T02:09:30.250467" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.251320" 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-08-10T02:09:30.250990" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.251864" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.251547" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.252416" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:09:30.252060" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.252931" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2c310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.252613" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:30.245991" elapsed="0.007035"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.253571" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:09:30.253173" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.253991" level="INFO">&lt;?xml version="1.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-08-10T02:09:30.253751" 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-08-10T02:09:30.261950" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.261650" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.267626" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.268177" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.268315" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.262107" elapsed="0.006262"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.268889" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.268538" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.272482" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.269153" elapsed="0.003403"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.275143" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.272700" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.272671" elapsed="0.002605"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.275500" 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-08-10T02:09:30.275815" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.275628" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.275605" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.275965" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:09:30.278256" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.278320" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.261313" elapsed="0.017060"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.281176" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.279142" elapsed="0.002080"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.279117" elapsed="0.002126"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.281803" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.281405" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.282356" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.281989" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.282433" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:30.282609" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.278676" elapsed="0.003958"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.282789" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.260749" elapsed="0.022481"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.290987" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.290686" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.297872" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.298024" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.298121" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.291143" elapsed="0.007003"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.298584" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.298307" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.301129" 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-08-10T02:09:30.298771" elapsed="0.002429"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.303767" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.301300" elapsed="0.002535"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.301274" elapsed="0.002591"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.307808" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.307873" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.304056" elapsed="0.003849"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.310441" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.308011" elapsed="0.002564"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.307985" elapsed="0.002625"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.310659" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:30.310930" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.310992" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.290289" elapsed="0.020735"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.313674" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.311807" elapsed="0.001920"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.311783" elapsed="0.001966"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.314294" 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-08-10T02:09:30.313896" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.314851" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.314503" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.314926" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:30.315102" 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-08-10T02:09:30.311322" elapsed="0.003806"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.315283" 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-08-10T02:09:30.289678" elapsed="0.026076"/>
</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-08-10T02:09:30.242706" elapsed="0.073102"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.235545" elapsed="0.080376"/>
</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-08-10T02:09:30.326792" 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-08-10T02:09:30.326927" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.326652" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.327537" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035d50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.327106" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.327998" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.327721" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.328534" 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-08-10T02:09:30.328175" elapsed="0.000387"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.328987" 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-08-10T02:09:30.328717" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.330047" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.329159" elapsed="0.000921"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.330596" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.330237" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.331113" 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-08-10T02:09:30.330793" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.331651" 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-08-10T02:09:30.331306" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.332155" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.331846" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.332746" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.332424" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.333256" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec035d50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.332941" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:30.326301" elapsed="0.007068"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.333894" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.333517" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.334311" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:09:30.334073" 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-08-10T02:09:30.342205" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.341908" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.350319" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.350893" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.350995" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.342378" elapsed="0.008642"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.351449" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.351182" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.353993" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.351639" elapsed="0.002405"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.355860" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.354114" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.354095" elapsed="0.001855"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.356090" 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-08-10T02:09:30.356358" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.356179" elapsed="0.000234"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.356163" elapsed="0.000272"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.356468" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:30.358721" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.358783" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.341595" elapsed="0.017219"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.361869" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.359643" elapsed="0.002290"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.359619" elapsed="0.002344"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.362738" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.362166" elapsed="0.000610"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.363508" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.362998" elapsed="0.000547"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.363613" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:30.363858" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.359158" elapsed="0.004735"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.364109" elapsed="0.000580"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.341027" elapsed="0.023751"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.373686" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.373391" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.380535" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.381105" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.381604" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.373841" elapsed="0.007830"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.382934" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.382177" elapsed="0.000863"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.388232" 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-08-10T02:09:30.383409" elapsed="0.004979"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.392577" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.388571" elapsed="0.004124"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.388517" elapsed="0.004231"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.397879" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.397926" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.393069" elapsed="0.004881"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.399752" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.398028" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.398009" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.399867" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:09:30.400084" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.400129" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.373002" elapsed="0.027150"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.402416" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.400820" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.400803" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.403151" 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-08-10T02:09:30.402729" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.403916" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.403553" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.403993" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:30.404172" 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-08-10T02:09:30.400462" 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-08-10T02:09:30.404390" 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-08-10T02:09:30.372393" elapsed="0.032471"/>
</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-08-10T02:09:30.322921" elapsed="0.082006"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.316087" elapsed="0.088974"/>
</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-08-10T02:09:30.416002" 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-08-10T02:09:30.416171" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.415855" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.416852" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe10d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.416404" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.417317" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.417034" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.417782" 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-08-10T02:09:30.417513" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.418224" 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-08-10T02:09:30.417958" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.419310" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.418416" elapsed="0.000942"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.419859" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.419519" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.420453" 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-08-10T02:09:30.420053" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.420990" 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-08-10T02:09:30.420665" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.421508" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.421181" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.422018" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.421704" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.422546" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbe10d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.422212" 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-08-10T02:09:30.415521" elapsed="0.007120"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.423169" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.422787" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.423648" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:09:30.423407" 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-08-10T02:09:30.431495" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.431049" elapsed="0.000474"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.437989" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.438639" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.438743" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.431655" elapsed="0.007114"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.439182" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.438931" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.442279" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.439387" elapsed="0.002988"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.444928" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.442472" elapsed="0.002547"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.442446" elapsed="0.002606"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.445252" 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-08-10T02:09:30.445592" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.445402" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.445378" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.445739" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:30.448003" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.448065" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.430735" elapsed="0.017362"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.451115" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.448898" elapsed="0.002280"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.448873" elapsed="0.002335"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.451987" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.451435" elapsed="0.000589"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.452805" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.452292" elapsed="0.000577"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.452921" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:30.453099" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.448441" elapsed="0.004684"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.453277" 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-08-10T02:09:30.430162" elapsed="0.023585"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.461662" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.461365" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.468609" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.468761" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.468870" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.461816" elapsed="0.007080"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.469305" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.469056" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.471515" 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-08-10T02:09:30.469514" elapsed="0.002052"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.473805" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.471633" elapsed="0.002240"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.471614" elapsed="0.002289"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.477865" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.477929" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.474095" elapsed="0.003865"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.480532" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.478066" elapsed="0.002563"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.478041" elapsed="0.002627"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.480709" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:09:30.480912" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.480955" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.460978" elapsed="0.020000"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.483119" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.481537" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.481520" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.483745" 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-08-10T02:09:30.483331" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.484297" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.483931" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.484389" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:30.484566" 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-08-10T02:09:30.481193" elapsed="0.003398"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.484784" 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-08-10T02:09:30.460361" elapsed="0.024872"/>
</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-08-10T02:09:30.412269" elapsed="0.073019"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.405408" elapsed="0.080006"/>
</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-08-10T02:09:30.496418" 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-08-10T02:09:30.496549" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.496261" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.497137" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.496729" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.497611" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.497317" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.498056" 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-08-10T02:09:30.497788" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.498515" 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-08-10T02:09:30.498230" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.499387" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.498689" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.499901" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.499574" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.500451" 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-08-10T02:09:30.500095" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.500966" 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-08-10T02:09:30.500643" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.501482" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.501156" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.501991" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.501675" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.502518" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbec400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.502184" 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-08-10T02:09:30.495894" elapsed="0.006720"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.503139" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.502762" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.503575" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:09:30.503317" 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-08-10T02:09:30.515486" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.515163" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.521729" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.522232" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.522368" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.515641" elapsed="0.006755"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.522823" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.522569" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.525943" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.523011" elapsed="0.003003"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.528610" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.526109" elapsed="0.002595"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.526083" 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-08-10T02:09:30.528932" 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-08-10T02:09:30.529239" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.529056" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.529033" elapsed="0.000335"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.529415" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:09:30.531682" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.531744" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.514848" elapsed="0.016927"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.534848" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.532577" elapsed="0.002333"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.532547" elapsed="0.002393"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.535716" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.535142" elapsed="0.000611"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.536635" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.535975" elapsed="0.000704"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.536742" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:09:30.536928" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.532068" elapsed="0.004885"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.537110" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.514276" elapsed="0.023300"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.545365" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.545053" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.552686" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.552903" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.553010" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.545521" elapsed="0.007516"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.553509" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.553211" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.555742" 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-08-10T02:09:30.553700" elapsed="0.002092"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.558120" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.555864" elapsed="0.002325"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.555844" elapsed="0.002376"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.562248" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.562313" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.558434" elapsed="0.003934"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.565131" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.562477" elapsed="0.002734"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.562451" elapsed="0.002793"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.565291" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:30.565592" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.565652" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.544676" elapsed="0.021007"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.568768" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.566483" elapsed="0.002348"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.566458" elapsed="0.002399"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.569437" 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-08-10T02:09:30.569018" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.569973" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.569626" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.570048" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:30.570225" 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-08-10T02:09:30.565993" elapsed="0.004257"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.570425" 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-08-10T02:09:30.544021" elapsed="0.026861"/>
</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-08-10T02:09:30.492472" elapsed="0.078468"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.485653" elapsed="0.085407"/>
</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-08-10T02:09:30.582017" 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-08-10T02:09:30.582162" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.581875" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.582778" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.582359" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.583280" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.582997" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.583746" 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-08-10T02:09:30.583476" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.584207" 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-08-10T02:09:30.583923" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.585094" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.584401" elapsed="0.000723"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.585632" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.585280" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.586145" 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-08-10T02:09:30.585828" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.586684" 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-08-10T02:09:30.586358" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.587182" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.586873" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.587710" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.587393" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.588230" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfc9f010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.587903" 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-08-10T02:09:30.581542" elapsed="0.006783"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.588870" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.588489" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.589288" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:09:30.589050" 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-08-10T02:09:30.599024" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.598721" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.604955" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.605532" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.605676" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.599179" elapsed="0.006523"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.606110" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.605860" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.608668" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.606296" elapsed="0.002424"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.610531" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.608788" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.608769" elapsed="0.001852"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.610763" 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-08-10T02:09:30.610987" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.610853" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.610836" elapsed="0.000225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.611093" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:30.613098" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.613162" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.598402" 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-08-10T02:09:30.616184" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.613974" elapsed="0.002275"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.613950" elapsed="0.002330"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.617071" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.616506" elapsed="0.000603"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.617847" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.617353" elapsed="0.000530"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.617951" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:30.618199" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.613515" elapsed="0.004719"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.618476" elapsed="0.000533"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.597826" elapsed="0.021270"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.628507" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.628195" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.634528" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.634748" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.634897" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.628661" elapsed="0.006271"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.635521" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.635150" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.638835" 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-08-10T02:09:30.635782" elapsed="0.003190"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.641641" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.639070" elapsed="0.002640"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.639044" elapsed="0.002697"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.646182" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.646228" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.641934" 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-08-10T02:09:30.648026" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.646328" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.646309" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.648154" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:09:30.648367" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.648412" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.627808" elapsed="0.020626"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.650567" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.648975" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.648957" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.651173" 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-08-10T02:09:30.650777" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.651731" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.651377" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.651806" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:30.651983" 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-08-10T02:09:30.648647" elapsed="0.003361"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.652174" 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-08-10T02:09:30.627175" elapsed="0.025482"/>
</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-08-10T02:09:30.578239" elapsed="0.074474"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.571361" elapsed="0.081460"/>
</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-08-10T02:09:30.663614" 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-08-10T02:09:30.663744" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:30.663480" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.664369" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ac590&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.663921" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.664823" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.664548" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.665265" 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-08-10T02:09:30.664998" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.665728" 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-08-10T02:09:30.665455" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.666824" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:30.665901" elapsed="0.000954"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.667354" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.667009" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.667911" 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-08-10T02:09:30.667590" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.668480" 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-08-10T02:09:30.668134" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.668990" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.668680" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.669519" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.669185" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.670033" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ac590&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.669713" 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-08-10T02:09:30.663138" elapsed="0.006993"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.670676" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:30.670277" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.671094" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:30.670855" 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-08-10T02:09:30.678841" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.678548" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.684321" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.684833" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.684935" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.678994" elapsed="0.005966"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.685435" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.685137" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.687955" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.685625" elapsed="0.002381"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.689882" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.688133" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.688112" elapsed="0.001861"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.690112" 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-08-10T02:09:30.690348" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.690202" elapsed="0.000199"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.690185" elapsed="0.000239"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.690456" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:09:30.692129" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.692177" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.678217" elapsed="0.013983"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.695067" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.692848" elapsed="0.002283"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.692823" elapsed="0.002338"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.695938" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.695387" elapsed="0.000588"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.696732" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.696217" elapsed="0.000551"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.696836" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:30.697081" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.692431" elapsed="0.004685"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.697329" elapsed="0.000556"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.677666" elapsed="0.020306"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.706565" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.706250" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.711585" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.711737" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.711844" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.706719" elapsed="0.005150"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.712291" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.712040" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.714594" 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-08-10T02:09:30.712498" elapsed="0.002148"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.716506" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.714715" elapsed="0.001842"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.714697" elapsed="0.001882"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.719433" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.719480" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.716717" elapsed="0.002787"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.721654" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.719582" elapsed="0.002202"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.719563" elapsed="0.002257"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.721869" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:30.722146" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.722208" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.705879" elapsed="0.016361"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.725305" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.723033" elapsed="0.002359"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.723009" elapsed="0.002416"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.726187" 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-08-10T02:09:30.725629" elapsed="0.000595"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.726969" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.726473" elapsed="0.000533"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.727076" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:30.727324" 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-08-10T02:09:30.722569" elapsed="0.004813"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.727601" elapsed="0.000552"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.705262" elapsed="0.022978"/>
</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-08-10T02:09:30.659890" elapsed="0.068427"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.653057" elapsed="0.075451"/>
</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-08-10T02:09:30.740471" 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-08-10T02:09:30.740604" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-08-10T02:09:30.740314" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.741233" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ada80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.740784" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.741723" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.741438" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.742191" 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-08-10T02:09:30.741902" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.742664" 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-08-10T02:09:30.742387" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.743788" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-08-10T02:09:30.742840" elapsed="0.000980"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.744374" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.743979" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.744899" 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-08-10T02:09:30.744575" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.745440" 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-08-10T02:09:30.745093" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.745950" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.745635" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.746546" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.746201" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.747069" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ada80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.746744" 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-08-10T02:09:30.739966" elapsed="0.007202"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.747726" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-08-10T02:09:30.747318" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.748172" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/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-08-10T02:09:30.747907" 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-08-10T02:09:30.756229" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.755852" elapsed="0.000405"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.761514" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.762006" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.762107" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.756411" elapsed="0.005721"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.762563" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.762291" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.765426" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.762754" elapsed="0.002744"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.768097" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.765592" elapsed="0.002597"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.765567" 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-08-10T02:09:30.768440" 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-08-10T02:09:30.768752" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.768565" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.768543" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.768899" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:30.771236" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.771299" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.755535" elapsed="0.015814"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.774526" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.772126" elapsed="0.002463"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.772101" elapsed="0.002519"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.775395" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.774821" elapsed="0.000612"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.776192" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.775656" elapsed="0.000573"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.776300" elapsed="0.000063"/>
</return>
<msg time="2026-08-10T02:09:30.776582" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.771649" 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-08-10T02:09:30.776823" 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-08-10T02:09:30.754950" elapsed="0.022320"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.785025" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.784723" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.790075" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.790240" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.790374" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.785219" elapsed="0.005185"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.790828" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.790564" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.793048" 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-08-10T02:09:30.791015" elapsed="0.002090"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.794972" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.793189" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.793170" elapsed="0.001874"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.798467" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.798532" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.795185" elapsed="0.003379"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.801190" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.798672" elapsed="0.002594"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.798645" elapsed="0.002654"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.801368" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:30.801646" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.801707" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.784323" elapsed="0.017416"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.804777" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.802517" elapsed="0.002375"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.802493" elapsed="0.002436"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.805735" 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-08-10T02:09:30.805137" elapsed="0.000635"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.806528" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.805997" elapsed="0.000568"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.806636" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:30.806896" 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-08-10T02:09:30.802036" elapsed="0.004896"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.807149" elapsed="0.000575"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.783689" elapsed="0.024127"/>
</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-08-10T02:09:30.736747" elapsed="0.071148"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.728831" elapsed="0.079261"/>
</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-08-10T02:09:30.819601" 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-08-10T02:09:30.819743" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.819448" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.820407" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ad350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.819926" elapsed="0.000511"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.820876" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.820592" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.821386" 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-08-10T02:09:30.821056" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.821847" 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-08-10T02:09:30.821570" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.822757" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.822022" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.823280" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.822944" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.823831" 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-08-10T02:09:30.823501" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.824403" 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-08-10T02:09:30.824047" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.824917" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.824597" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.825457" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.825113" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.825979" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec2ad350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.825655" 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-08-10T02:09:30.818995" elapsed="0.007082"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.826679" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.826265" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.827110" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:09:30.826862" 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-08-10T02:09:30.834862" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.834564" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.839835" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.840376" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.840495" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.835017" elapsed="0.005506"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.840953" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.840689" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.843510" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.841145" elapsed="0.002418"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:30.845792" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.843634" elapsed="0.002251"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.843616" elapsed="0.002303"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.846115" 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-08-10T02:09:30.846454" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.846240" elapsed="0.000286"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.846218" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.846602" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:30.848878" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.848941" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.834232" elapsed="0.014740"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.851972" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.849751" elapsed="0.002285"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.849726" elapsed="0.002340"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.852844" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.852266" elapsed="0.000616"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.853687" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.853166" elapsed="0.000558"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.853794" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:30.854043" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.849266" elapsed="0.004813"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.854295" elapsed="0.000559"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.833675" elapsed="0.021267"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.863279" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.862983" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.868025" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.868178" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.868275" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.863451" elapsed="0.004849"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.868734" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.868484" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.870928" 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-08-10T02:09:30.868920" elapsed="0.002058"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.872800" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.871046" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.871028" elapsed="0.001842"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.875680" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.875725" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.873006" elapsed="0.002742"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.878220" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.875824" elapsed="0.002474"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.875806" elapsed="0.002546"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.878403" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:30.878671" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.878731" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.862610" elapsed="0.016151"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.881803" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.879548" elapsed="0.002318"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.879523" elapsed="0.002374"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.882685" 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-08-10T02:09:30.882103" elapsed="0.000620"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.883456" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.882945" elapsed="0.000548"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.883562" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:30.883808" 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-08-10T02:09:30.879061" 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-08-10T02:09:30.884155" elapsed="0.000562"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.861983" elapsed="0.022823"/>
</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-08-10T02:09:30.815690" elapsed="0.069195"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.808454" elapsed="0.076586"/>
</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-08-10T02:09:30.897364" 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-08-10T02:09:30.897503" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.897210" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.898095" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.897685" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.898571" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.898274" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.899015" 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-08-10T02:09:30.898751" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.899475" 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-08-10T02:09:30.899190" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.900349" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.899648" elapsed="0.000733"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.900862" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.900537" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.901388" 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-08-10T02:09:30.901054" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.901900" 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-08-10T02:09:30.901579" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.902412" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" 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-08-10T02:09:30.902088" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.902918" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.902605" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.903441" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e4220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.903110" 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-08-10T02:09:30.896874" elapsed="0.006663"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.904084" level="INFO">${det} = &lt;?xml version="1.0" encoding="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-08-10T02:09:30.903684" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.904522" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:09:30.904263" elapsed="0.000356"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.912542" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.912218" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.917623" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.918381" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.918527" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.912703" elapsed="0.005861"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.919137" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.918786" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.922730" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.919424" 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-08-10T02:09:30.925360" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-08-10T02:09:30.922903" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.922874" elapsed="0.002622"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:30.925699" 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-08-10T02:09:30.926012" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.925826" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:30.925803" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.926161" elapsed="0.000019"/>
</return>
<msg time="2026-08-10T02:09:30.928485" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:30.928549" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.911900" elapsed="0.016681"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.930729" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.929156" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.929139" elapsed="0.001656"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.931365" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.930943" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.931912" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.931551" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.931988" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:30.932166" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:30.928819" elapsed="0.003372"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.932361" 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-08-10T02:09:30.911308" elapsed="0.021517"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.940622" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.940300" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.945767" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.946001" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:30.946102" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.940776" elapsed="0.005351"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.946562" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.946286" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.948960" 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-08-10T02:09:30.946748" elapsed="0.002263"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:30.950856" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.949080" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.949061" elapsed="0.001867"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.954253" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:30.954317" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:30.951067" elapsed="0.003305"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:30.960794" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:30.954481" elapsed="0.006392"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.954455" elapsed="0.006451"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:30.960953" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:30.961224" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:30.961285" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:30.939922" 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-08-10T02:09:30.964475" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:30.962104" elapsed="0.002435"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:30.962080" elapsed="0.002496"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.965189" 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-08-10T02:09:30.964790" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.965742" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:30.965393" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:30.965817" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:30.965995" 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-08-10T02:09:30.961643" elapsed="0.004378"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:30.966179" 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-08-10T02:09:30.939262" elapsed="0.027382"/>
</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-08-10T02:09:30.893245" elapsed="0.073458"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.885398" elapsed="0.081433"/>
</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-08-10T02:09:30.977786" 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-08-10T02:09:30.977946" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:30.977643" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:30.978548" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2fe70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:30.978129" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.979064" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:30.978771" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.979543" 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-08-10T02:09:30.979247" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:30.980002" 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-08-10T02:09:30.979720" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:30.980939" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:30.980178" elapsed="0.000792"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.981478" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.981127" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.981992" 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-08-10T02:09:30.981673" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.982525" 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-08-10T02:09:30.982182" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.983028" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:30.982716" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.983555" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:30.983221" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.984101" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2fe70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:30.983751" 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-08-10T02:09:30.977299" elapsed="0.006899"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.984743" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:30.984363" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.985160" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:30.984921" 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-08-10T02:09:30.992880" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:30.992582" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:30.998251" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:30.998811" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:30.998913" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:30.993034" elapsed="0.005904"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:30.999405" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.999132" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.001916" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:30.999593" elapsed="0.002374"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:31.003784" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:09:31.002035" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.002016" elapsed="0.001889"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:31.004047" 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-08-10T02:09:31.004272" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:31.004137" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:31.004121" elapsed="0.000242"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.004395" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:09:31.006643" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:31.006705" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:30.992251" elapsed="0.014485"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.009724" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:31.007506" elapsed="0.002281"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.007482" elapsed="0.002335"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.010592" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:31.010016" elapsed="0.000613"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.011356" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:31.010851" elapsed="0.000543"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:31.011463" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:31.011709" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:31.007028" elapsed="0.004715"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:31.011995" elapsed="0.000556"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:30.991688" elapsed="0.020950"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.021563" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:31.021236" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:31.026855" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:31.027065" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:31.027199" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:31.021716" elapsed="0.005517"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.028052" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:31.027657" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.033618" 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-08-10T02:09:31.028312" elapsed="0.005377"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.036301" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:31.033833" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.033806" elapsed="0.002617"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:31.039098" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:31.039144" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:31.036639" elapsed="0.002528"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:31.040946" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:31.039243" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.039224" elapsed="0.001801"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:31.041059" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:09:31.041250" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:31.041293" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:31.020864" elapsed="0.020451"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.043457" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:31.041875" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.041857" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.044092" 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-08-10T02:09:31.043668" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.044649" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:31.044278" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:31.044724" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:31.044900" 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-08-10T02:09:31.041549" elapsed="0.003375"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:31.045078" 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-08-10T02:09:31.020238" elapsed="0.025304"/>
</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-08-10T02:09:30.974020" elapsed="0.071576"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:30.967157" elapsed="0.078551"/>
</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-08-10T02:09:31.056553" 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-08-10T02:09:31.056685" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:31.056414" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:31.057265" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1aa610&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:31.056865" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:31.057743" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:31.057461" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:31.058185" 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-08-10T02:09:31.057919" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:31.058645" 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-08-10T02:09:31.058376" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:31.059639" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:31.058820" elapsed="0.000850"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.060184" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:31.059852" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.060757" 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-08-10T02:09:31.060434" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.061273" 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-08-10T02:09:31.060950" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.061792" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:31.061481" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.062299" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:31.061985" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.062828" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1aa610&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:31.062510" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:09:31.056069" elapsed="0.006854"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.063468" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:31.063070" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.063924" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:31.063649" 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-08-10T02:09:31.071732" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:31.071434" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:31.078916" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:31.079471" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:31.079587" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:31.071905" elapsed="0.007726"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.080285" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:31.079931" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.083875" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:31.080573" elapsed="0.003374"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:31.086500" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:09:31.084043" elapsed="0.002550"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.084016" elapsed="0.002611"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:31.086823" elapsed="0.000029"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:31.087184" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:31.086994" elapsed="0.000263"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:31.086969" elapsed="0.000320"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.087363" elapsed="0.000022"/>
</return>
<msg time="2026-08-10T02:09:31.089440" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:31.089485" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:31.071103" elapsed="0.018405"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.091643" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:31.090048" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.090031" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.092264" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:31.091868" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.092823" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:31.092470" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:31.092899" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:31.093077" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:31.089720" elapsed="0.003382"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:31.093257" 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-08-10T02:09:31.070548" elapsed="0.023176"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.101502" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:31.101188" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:31.106564" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:31.106718" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:31.106815" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:31.101657" elapsed="0.005183"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.107246" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:31.106998" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.109639" 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-08-10T02:09:31.107451" 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-08-10T02:09:31.111513" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:31.109758" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.109740" elapsed="0.001844"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:31.114951" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:31.115014" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:31.111722" elapsed="0.003324"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:31.117574" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:31.115154" elapsed="0.002497"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.115128" elapsed="0.002557"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:31.117732" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:31.118002" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:31.118064" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:31.100814" elapsed="0.017281"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.121199" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:31.118936" elapsed="0.002327"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.118912" elapsed="0.002381"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.122079" 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-08-10T02:09:31.121523" elapsed="0.000594"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.122859" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:31.122365" elapsed="0.000531"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:31.122966" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:31.123212" 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-08-10T02:09:31.118474" elapsed="0.004773"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:31.123488" elapsed="0.000575"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:09:31.100178" elapsed="0.023975"/>
</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-08-10T02:09:31.052813" elapsed="0.071417"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:31.045959" elapsed="0.078448"/>
</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-08-10T02:09:31.135243" 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-08-10T02:09:31.135389" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:31.135107" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:31.135987" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbefe20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:31.135570" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:31.136466" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:09:31.136170" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:31.136912" 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-08-10T02:09:31.136644" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:09:31.137372" 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-08-10T02:09:31.137087" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:09:31.138289" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:31.137546" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.138828" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:31.138495" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.139357" 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-08-10T02:09:31.139020" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.139905" 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-08-10T02:09:31.139552" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.140427" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-08-10T02:09:31.140099" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.140938" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:31.140624" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.141512" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ecbefe20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:09:31.141171" 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-08-10T02:09:31.134777" elapsed="0.006837"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.142142" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-08-10T02:09:31.141762" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.142580" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-08-10T02:09:31.142321" 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-08-10T02:09:31.150317" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:31.150020" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:31.154629" level="INFO">GET Request : url=http://10.30.170.209: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=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:31.155117" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:31.155217" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:31.150491" elapsed="0.004751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.155672" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:31.155420" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.158930" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:31.155894" elapsed="0.003109"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:09:31.161561" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:09:31.159097" elapsed="0.002555"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.159072" elapsed="0.002613"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:09:31.161881" 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-08-10T02:09:31.162189" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:31.162004" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:31.161981" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.162357" elapsed="0.000021"/>
</return>
<msg time="2026-08-10T02:09:31.164658" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:09:31.164720" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:09:31.149706" elapsed="0.015046"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.167766" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:31.165527" elapsed="0.002305"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.165503" elapsed="0.002360"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.168678" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:31.168068" elapsed="0.000691"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.169282" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:31.168931" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:31.169377" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:31.169556" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:09:31.165044" elapsed="0.004537"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:31.169736" 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-08-10T02:09:31.149135" elapsed="0.021046"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.178057" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:09:31.177763" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:31.182862" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0tqym2v1lcx0914mriugqibxyk9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:31.183013" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:09:31.183110" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:09:31.178209" elapsed="0.004927"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.183568" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:31.183294" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.185969" 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-08-10T02:09:31.183770" elapsed="0.002250"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.187888" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:31.186091" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.186071" elapsed="0.001889"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:09:31.191483" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:09:31.191547" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:09:31.188099" elapsed="0.003480"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:31.194104" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:31.191685" elapsed="0.002496"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.191659" elapsed="0.002555"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:09:31.194260" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:31.194551" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:09:31.194617" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:09:31.177385" elapsed="0.017264"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:09:31.197647" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:31.195425" elapsed="0.002286"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.195400" elapsed="0.002341"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.198529" 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-08-10T02:09:31.197943" elapsed="0.000624"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.199274" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:09:31.198791" elapsed="0.000519"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:09:31.199402" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:31.199706" 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-08-10T02:09:31.194946" elapsed="0.004841"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:09:31.200007" 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-08-10T02:09:31.176759" elapsed="0.023918"/>
</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-08-10T02:09:31.131534" elapsed="0.069216"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:31.124729" elapsed="0.076139"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-10T02:09:31.201800" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:09:31.201720" elapsed="0.000150"/>
</kw>
<doc>Test suite for Stats Manager flows collection</doc>
<status status="PASS" start="2026-08-10T02:07:53.008611" elapsed="98.193291"/>
</suite>
<kw name="Stop Mininet" owner="Utils" type="TEARDOWN">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.204669" 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-08-10T02:09:31.204442" elapsed="0.000272"/>
</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-08-10T02:09:31.204852" elapsed="0.000147"/>
</kw>
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-08-10T02:09:31.205127" elapsed="0.000155"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:09:31.207387" 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-08-10T02:09:31.205424" elapsed="0.002049"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:09:31.301010" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 136.318 seconds
[?2004h[jenkins@releng-14419-806-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-08-10T02:09:31.207659" elapsed="0.093431"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:09:31.301250" elapsed="0.000212"/>
</kw>
<doc>Cleanup/Shutdown work that should be done at the completion of all
tests</doc>
<status status="PASS" start="2026-08-10T02:09:31.204146" elapsed="0.097376"/>
</kw>
<doc>Test suite for the OpenDaylight OpenFlow statistics manager</doc>
<status status="PASS" start="2026-08-10T02:07:12.510466" elapsed="138.791088"/>
</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-08-10T02:09:31.363991" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7777ec3a3a50&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-08-10T02:09:31.363793" elapsed="0.000230"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.364563" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7777ec3a3a50&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-08-10T02:09:31.364196" elapsed="0.000410"/>
</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-08-10T02:09:31.364750" elapsed="0.000305"/>
</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-08-10T02:09:31.365203" elapsed="0.000325"/>
</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-08-10T02:09:31.365675" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:31.375612" level="INFO">MAKE: OpenVswitch
MODEL: OVS
IP: 10.30.171.177
PROMPT: &gt;
CONTROLLER_IP: 10.30.170.209
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-08-10T02:09:31.366114" elapsed="0.009581"/>
</kw>
<kw name="Ping" owner="SwitchUtils">
<kw name="Run" owner="OperatingSystem">
<msg time="2026-08-10T02:09:31.378629" level="INFO">Running command 'ping 10.30.171.177 -c 1 -W 1 2&gt;&amp;1'.</msg>
<msg time="2026-08-10T02:09:31.382875" level="INFO">${output} = PING 10.30.171.177 (10.30.171.177) 56(84) bytes of data.
64 bytes from 10.30.171.177: icmp_seq=1 ttl=64 time=0.663 ms

--- 10.30.171.177 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-08-10T02:09:31.377698" elapsed="0.005208"/>
</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-08-10T02:09:31.383067" elapsed="0.000376"/>
</kw>
<arg>${test_switch.mgmt_ip}</arg>
<status status="PASS" start="2026-08-10T02:09:31.375854" elapsed="0.007657"/>
</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-08-10T02:09:31.387446" elapsed="0.003129"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:31.384997" elapsed="0.005733"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.384964" elapsed="0.005808"/>
</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-08-10T02:09:31.393399" elapsed="0.000439"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:31.390854" elapsed="0.003043"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.390830" elapsed="0.003102"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:09:31.400220" 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-08-10T02:09:31.396627" elapsed="0.003621"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:31.394009" elapsed="0.006281"/>
</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-08-10T02:09:31.400482" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:31.400315" elapsed="0.000223"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.393987" elapsed="0.006572"/>
</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-08-10T02:09:31.405766" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:09:32.044499" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:07:14 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:09:31.402382" elapsed="0.642296"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:31.400620" elapsed="0.644129"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:31.400602" elapsed="0.644191"/>
</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-08-10T02:09:32.047021" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:32.044902" elapsed="0.002187"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:32.047776" 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-08-10T02:09:32.047314" elapsed="0.000489"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:32.047114" elapsed="0.000725"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:32.044868" elapsed="0.002994"/>
</if>
<return>
<value>${connection_index}</value>
<status status="PASS" start="2026-08-10T02:09:32.047906" elapsed="0.000048"/>
</return>
<msg time="2026-08-10T02:09:32.048103" 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-08-10T02:09:31.384726" elapsed="0.663403"/>
</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-08-10T02:09:32.048284" elapsed="0.000339"/>
</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-08-10T02:09:32.050881" elapsed="0.001628"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:32.049178" elapsed="0.003369"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:32.049160" elapsed="0.003411"/>
</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-08-10T02:09:32.054287" elapsed="0.001899"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:32.052626" elapsed="0.003601"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:32.052609" elapsed="0.003642"/>
</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-08-10T02:09:32.057989" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:32.056306" elapsed="0.001737"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:32.056290" elapsed="0.001776"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:32.059824" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:32.058120" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:32.058105" elapsed="0.001800"/>
</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-08-10T02:09:32.048962" elapsed="0.010989"/>
</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-08-10T02:09:32.063903" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:32.062008" elapsed="0.002252"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:32.061991" elapsed="0.002295"/>
</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-08-10T02:09:32.066068" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:32.064369" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:32.064351" elapsed="0.001797"/>
</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-08-10T02:09:32.061784" elapsed="0.004411"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:09:33.066852" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:09:32.066357" elapsed="1.000751"/>
</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-08-10T02:09:33.072317" level="INFO">pwd</msg>
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-08-10T02:09:33.072125" elapsed="0.000284"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:33.068415" elapsed="0.004038"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:33.068305" elapsed="0.004186"/>
</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-08-10T02:09:33.075041" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:33.072567" elapsed="0.002550"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:33.072544" elapsed="0.002606"/>
</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-08-10T02:09:33.067838" elapsed="0.007382"/>
</kw>
<var name="${cmd}">pwd</var>
<status status="PASS" start="2026-08-10T02:09:32.061583" elapsed="1.013683"/>
</iter>
<var>${cmd}</var>
<value>@{switch.connection_configs}</value>
<status status="PASS" start="2026-08-10T02:09:32.060012" elapsed="1.015352"/>
</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-08-10T02:09:31.384164" elapsed="1.691312"/>
</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-08-10T02:09:33.078509" elapsed="0.002187"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:33.076146" elapsed="0.004601"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:33.076122" elapsed="0.004659"/>
</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-08-10T02:09:33.086266" elapsed="0.001844"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:33.080856" elapsed="0.007294"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:33.080834" elapsed="0.007340"/>
</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-08-10T02:09:33.089913" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:33.088228" elapsed="0.001740"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:33.088213" elapsed="0.001778"/>
</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-08-10T02:09:33.091738" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:33.090044" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:33.090029" elapsed="0.001791"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:33.075880" elapsed="0.015986"/>
</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-08-10T02:09:33.095572" elapsed="0.000309"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:33.093869" elapsed="0.002050"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:33.093852" elapsed="0.002092"/>
</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-08-10T02:09:33.097765" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:33.096013" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:33.095981" elapsed="0.001863"/>
</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-08-10T02:09:33.093648" elapsed="0.004242"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.098534" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:09:33.098046" elapsed="1.000747"/>
</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-08-10T02:09:34.104717" 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-08-10T02:09:34.104533" elapsed="0.000252"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.101012" elapsed="0.003816"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.100967" elapsed="0.003898"/>
</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-08-10T02:09:34.107898" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.105365" elapsed="0.002628"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.105316" elapsed="0.002713"/>
</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-08-10T02:09:34.100520" elapsed="0.007580"/>
</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-08-10T02:09:34.099310" elapsed="0.008860"/>
</kw>
<var name="${cmd}">['/sbin/ifconfig -a | egrep \'^s\' | awk \'{print "sudo ovs-vsctl del-br",$1}\' | sh']</var>
<status status="PASS" start="2026-08-10T02:09:33.093450" elapsed="1.014770"/>
</iter>
<var>${cmd}</var>
<value>@{switch.initialization_cmds}</value>
<status status="PASS" start="2026-08-10T02:09:33.091920" elapsed="1.016365"/>
</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-08-10T02:09:34.111087" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.108438" elapsed="0.002737"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.108410" elapsed="0.002799"/>
</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-08-10T02:09:34.113721" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.111288" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.111264" elapsed="0.002578"/>
</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-08-10T02:09:31.383830" elapsed="2.730084"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:34.114632" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ec274e50&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-08-10T02:09:34.114132" elapsed="0.000795"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:31.363402" elapsed="2.751621"/>
</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-08-10T02:09:34.117031" 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-08-10T02:09:34.116365" elapsed="0.000732"/>
</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-08-10T02:09:34.121111" elapsed="0.001692"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.119293" elapsed="0.003550"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.119275" elapsed="0.003594"/>
</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-08-10T02:09:34.124651" elapsed="0.001918"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.122924" elapsed="0.003685"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.122908" elapsed="0.003727"/>
</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-08-10T02:09:34.128448" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.126718" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.126701" elapsed="0.001828"/>
</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-08-10T02:09:34.130276" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.128584" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.128568" elapsed="0.001806"/>
</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-08-10T02:09:34.119042" elapsed="0.011381"/>
</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-08-10T02:09:34.137420" elapsed="0.001679"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.135691" elapsed="0.003448"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.135672" elapsed="0.003492"/>
</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-08-10T02:09:34.140944" elapsed="0.001920"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.139220" elapsed="0.003686"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.139203" elapsed="0.003773"/>
</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-08-10T02:09:34.144764" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.143037" elapsed="0.001784"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.143021" elapsed="0.001825"/>
</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-08-10T02:09:34.146668" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.144901" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.144885" elapsed="0.001870"/>
</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-08-10T02:09:34.135447" elapsed="0.011359"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.147488" 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-08-10T02:09:34.147150" elapsed="0.000399"/>
</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-08-10T02:09:34.149966" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.148004" elapsed="0.002181"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.147986" elapsed="0.002225"/>
</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-08-10T02:09:34.152008" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.150272" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.150251" elapsed="0.001832"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:34.147765" elapsed="0.004365"/>
</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-08-10T02:09:34.154582" level="INFO">Executing command 'sudo ovs-vsctl add-br s1'.</msg>
<msg time="2026-08-10T02:09:34.258871" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:34.259158" 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-08-10T02:09:34.154402" elapsed="0.104814"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.152677" elapsed="0.106624"/>
</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-08-10T02:09:34.259744" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.259411" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.152659" elapsed="0.107256"/>
</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-08-10T02:09:34.263934" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.260040" elapsed="0.004023"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.265238" 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-08-10T02:09:34.264457" elapsed="0.000839"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.264116" elapsed="0.001295"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.260004" elapsed="0.005458"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:34.265546" elapsed="0.000080"/>
</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-08-10T02:09:34.152403" elapsed="0.113441"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl add-br s1</var>
<status status="PASS" start="2026-08-10T02:09:34.147020" elapsed="0.118905"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.267102" 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-08-10T02:09:34.266441" elapsed="0.000787"/>
</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-08-10T02:09:34.272117" elapsed="0.000169"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.268259" elapsed="0.004061"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.268220" elapsed="0.004141"/>
</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-08-10T02:09:34.274114" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.272418" elapsed="0.001748"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.272401" elapsed="0.001788"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:34.267734" elapsed="0.006503"/>
</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-08-10T02:09:34.276807" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-08-10T02:09:34.321846" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:34.322126" 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-08-10T02:09:34.276633" elapsed="0.045548"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.274813" elapsed="0.047458"/>
</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-08-10T02:09:34.322759" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.322394" elapsed="0.000581"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.274795" elapsed="0.048234"/>
</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-08-10T02:09:34.327110" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.323157" elapsed="0.004084"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.328449" 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-08-10T02:09:34.327640" elapsed="0.000870"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.327294" elapsed="0.001296"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.323120" elapsed="0.005519"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:34.328716" elapsed="0.000064"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:34.274514" elapsed="0.054563"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set bridge s1 protocols=OpenFlow13</var>
<status status="PASS" start="2026-08-10T02:09:34.266131" elapsed="0.063034"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.330315" level="INFO">sudo ovs-vsctl set-controller s1 tcp:10.30.170.209</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:34.329683" elapsed="0.000828"/>
</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-08-10T02:09:34.334073" elapsed="0.000231"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.331663" elapsed="0.002710"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.331613" elapsed="0.002806"/>
</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-08-10T02:09:34.336888" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.334496" elapsed="0.002464"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.334474" elapsed="0.002518"/>
</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-08-10T02:09:34.331062" elapsed="0.005995"/>
</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-08-10T02:09:34.340470" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:10.30.170.209'.</msg>
<msg time="2026-08-10T02:09:34.386487" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:34.386835" 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-08-10T02:09:34.340214" elapsed="0.046680"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.337807" elapsed="0.049174"/>
</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-08-10T02:09:34.387415" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.387038" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.337784" elapsed="0.049807"/>
</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-08-10T02:09:34.391639" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.387717" elapsed="0.004053"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.392931" 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-08-10T02:09:34.392125" elapsed="0.000865"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.391822" elapsed="0.001247"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.387681" elapsed="0.005436"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:34.393198" elapsed="0.000063"/>
</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-08-10T02:09:34.337430" elapsed="0.056083"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:10.30.170.209</var>
<status status="PASS" start="2026-08-10T02:09:34.329402" elapsed="0.064196"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.394800" 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-08-10T02:09:34.394078" 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-08-10T02:09:34.397738" elapsed="0.000165"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.395886" elapsed="0.002050"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.395868" 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-08-10T02:09:34.399734" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.398015" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.397999" 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-08-10T02:09:34.395446" elapsed="0.004411"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:09:34.402255" level="INFO">Executing command 'sudo ifconfig s1 up'.</msg>
<msg time="2026-08-10T02:09:34.450464" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:34.464084" 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-08-10T02:09:34.402090" elapsed="0.062023"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.400396" elapsed="0.063760"/>
</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-08-10T02:09:34.464363" elapsed="0.000075"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.464187" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.400378" elapsed="0.064119"/>
</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-08-10T02:09:34.466301" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.464558" elapsed="0.001818"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.466932" 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-08-10T02:09:34.466547" elapsed="0.000412"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.466408" elapsed="0.000586"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.464540" elapsed="0.002477"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:34.467053" elapsed="0.000030"/>
</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-08-10T02:09:34.400105" elapsed="0.067076"/>
</kw>
<var name="${cmd}">sudo ifconfig s1 up</var>
<status status="PASS" start="2026-08-10T02:09:34.393802" elapsed="0.073417"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-08-10T02:09:34.146862" elapsed="0.320388"/>
</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-08-10T02:09:34.133431" elapsed="0.333875"/>
</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-08-10T02:09:34.469511" elapsed="0.000167"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.467793" elapsed="0.001918"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.467775" elapsed="0.001960"/>
</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-08-10T02:09:34.471577" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.469789" elapsed="0.001841"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.469773" elapsed="0.001880"/>
</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-08-10T02:09:34.467548" elapsed="0.004152"/>
</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-08-10T02:09:34.483245" elapsed="0.001641"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.481541" elapsed="0.003384"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.481523" elapsed="0.003426"/>
</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-08-10T02:09:34.486707" elapsed="0.001898"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.485004" elapsed="0.003641"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.484988" elapsed="0.003681"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:34.490423" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.488722" elapsed="0.001757"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.488707" elapsed="0.001795"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:34.492248" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.490555" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.490540" elapsed="0.001788"/>
</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-08-10T02:09:34.481291" elapsed="0.011101"/>
</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-08-10T02:09:34.494734" elapsed="0.000166"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.492838" elapsed="0.002094"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.492820" elapsed="0.002137"/>
</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-08-10T02:09:34.496723" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.495012" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.494996" elapsed="0.001803"/>
</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-08-10T02:09:34.492600" elapsed="0.004246"/>
</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-08-10T02:09:34.499282" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:34.512465" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:34.512637" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:34.499107" elapsed="0.013569"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.497380" elapsed="0.015350"/>
</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-08-10T02:09:34.513021" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.512765" elapsed="0.000336"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.497362" elapsed="0.015768"/>
</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-08-10T02:09:34.515672" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.513208" elapsed="0.002545"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.516488" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:34.515977" elapsed="0.000551"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.515786" elapsed="0.000792"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.513185" elapsed="0.003423"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:34.516656" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:34.516865" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:34.497101" elapsed="0.019802"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.517532" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8224  bytes 56504652 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5954  bytes 1330276 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:34.517110" 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-08-10T02:09:34.521429" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:34.574893" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:34.575179" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:34.521153" elapsed="0.054087"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.518496" elapsed="0.056895"/>
</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-08-10T02:09:34.575840" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.575458" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.518461" elapsed="0.057562"/>
</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-08-10T02:09:34.580081" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.576151" elapsed="0.004058"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.581561" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:34.580682" elapsed="0.000943"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:34.580262" elapsed="0.001445"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:34.576114" elapsed="0.005642"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:34.581833" elapsed="0.000064"/>
</return>
<msg time="2026-08-10T02:09:34.582170" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:34.517985" elapsed="0.064244"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:34.583293" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:34.582651" elapsed="0.000811"/>
</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-08-10T02:09:34.585011" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:34.584266" elapsed="0.000858">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:34.583964" elapsed="0.001317">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:34.583944" elapsed="0.001387">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:34.585659" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:34.585455" elapsed="0.000281"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:34.585432" elapsed="0.000336"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:34.583902" elapsed="0.001928">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:34.583580" elapsed="0.002333">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:34.478052" elapsed="0.108006">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:35.603177" elapsed="0.001843"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:35.601436" elapsed="0.003638"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.601410" elapsed="0.003694"/>
</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-08-10T02:09:35.606882" elapsed="0.001905"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:35.605161" elapsed="0.003667"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.605145" elapsed="0.003708"/>
</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-08-10T02:09:35.610604" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:35.608907" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.608891" elapsed="0.001805"/>
</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-08-10T02:09:35.612445" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:35.610750" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.610734" elapsed="0.001792"/>
</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-08-10T02:09:35.601170" elapsed="0.011408"/>
</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-08-10T02:09:35.614737" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:35.613025" elapsed="0.001935"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.613008" elapsed="0.001977"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:35.616722" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:35.615038" elapsed="0.001736"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.615023" elapsed="0.001773"/>
</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-08-10T02:09:35.612791" elapsed="0.004051"/>
</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-08-10T02:09:35.619261" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:35.632754" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:35.632927" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:35.619088" elapsed="0.013878"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:35.617372" elapsed="0.015648"/>
</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-08-10T02:09:35.633278" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:35.633056" elapsed="0.000331"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.617354" elapsed="0.016063"/>
</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-08-10T02:09:35.637394" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:35.633503" elapsed="0.004026"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:35.638811" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:35.637891" elapsed="0.000988"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:35.637583" elapsed="0.001378"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.633475" elapsed="0.005533"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:35.639093" elapsed="0.000076"/>
</return>
<msg time="2026-08-10T02:09:35.639487" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:35.617104" elapsed="0.022446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:35.640561" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8254  bytes 56507726 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5986  bytes 1342812 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:35.639890" elapsed="0.000825"/>
</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-08-10T02:09:35.644536" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:35.694027" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:35.694296" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:35.644369" elapsed="0.050027"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:35.641937" elapsed="0.052549"/>
</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-08-10T02:09:35.694896" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:35.694543" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.641897" elapsed="0.053167"/>
</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-08-10T02:09:35.699452" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:35.695187" elapsed="0.004397"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:35.700737" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:35.699938" elapsed="0.000861"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:35.699637" elapsed="0.001241"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:35.695151" elapsed="0.005773"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:35.701000" elapsed="0.000062"/>
</return>
<msg time="2026-08-10T02:09:35.701330" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:35.641293" elapsed="0.060133"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:35.702417" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:35.701759" elapsed="0.000786"/>
</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-08-10T02:09:35.704274" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:35.703800" elapsed="0.000578">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:35.703265" elapsed="0.001193">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:35.703233" elapsed="0.001293">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:35.704747" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:35.704601" elapsed="0.000202"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:35.704583" elapsed="0.000243"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:35.703165" elapsed="0.001706">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:35.702658" elapsed="0.002276">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:35.596994" elapsed="0.108045">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:36.722665" elapsed="0.001740"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:36.720899" elapsed="0.003564"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.720872" 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-08-10T02:09:36.726243" elapsed="0.001968"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:36.724552" elapsed="0.003700"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.724536" elapsed="0.003740"/>
</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-08-10T02:09:36.730044" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:36.728346" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.728314" elapsed="0.001808"/>
</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-08-10T02:09:36.731884" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:36.730175" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.730160" elapsed="0.001805"/>
</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-08-10T02:09:36.720648" elapsed="0.011369"/>
</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-08-10T02:09:36.734165" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:36.732489" elapsed="0.001911"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.732472" 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-08-10T02:09:36.736182" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:36.734478" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.734463" elapsed="0.001793"/>
</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-08-10T02:09:36.732235" elapsed="0.004068"/>
</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-08-10T02:09:36.738929" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:36.752679" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:36.752960" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:36.738747" elapsed="0.014275"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:36.736838" elapsed="0.016268"/>
</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-08-10T02:09:36.753559" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:36.753163" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.736820" elapsed="0.016911"/>
</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-08-10T02:09:36.757740" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:36.753853" elapsed="0.004016"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:36.759090" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:36.758225" elapsed="0.001092"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:36.757921" elapsed="0.001531"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.753817" elapsed="0.005684"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:36.759588" elapsed="0.000080"/>
</return>
<msg time="2026-08-10T02:09:36.759914" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:36.736587" elapsed="0.023366"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:36.760601" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8266  bytes 56509168 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6001  bytes 1346262 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 216 (216.0 B)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 6  bytes 516 (516.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:36.760168" elapsed="0.000530"/>
</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-08-10T02:09:36.764086" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:36.864902" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:36.865199" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:36.763857" elapsed="0.101400"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:36.761460" elapsed="0.103933"/>
</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-08-10T02:09:36.865806" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:36.865456" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.761436" elapsed="0.104540"/>
</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-08-10T02:09:36.870014" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:36.866101" elapsed="0.004040"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:36.871416" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:36.870532" elapsed="0.000959"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:36.870192" elapsed="0.001380"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:36.866065" elapsed="0.005553"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:36.871697" elapsed="0.000067"/>
</return>
<msg time="2026-08-10T02:09:36.871999" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:36.761056" elapsed="0.110980"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:36.872673" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:36.872249" elapsed="0.000505"/>
</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-08-10T02:09:36.874111" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:36.873510" elapsed="0.000714">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:36.873188" elapsed="0.001141">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:36.873168" elapsed="0.001231">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:36.874698" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:36.874494" elapsed="0.000343"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:36.874472" elapsed="0.000401"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:36.873124" elapsed="0.001813">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:36.872831" elapsed="0.002192">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:36.716174" elapsed="0.158997">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:37.894581" elapsed="0.001697"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:37.892470" elapsed="0.003860"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:37.892438" elapsed="0.003937"/>
</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-08-10T02:09:37.898117" elapsed="0.001948"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:37.896432" elapsed="0.003675"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:37.896416" elapsed="0.003716"/>
</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-08-10T02:09:37.901893" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:37.900186" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:37.900171" elapsed="0.001801"/>
</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-08-10T02:09:37.903709" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:37.902026" elapsed="0.001741"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:37.902010" elapsed="0.001779"/>
</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-08-10T02:09:37.892097" elapsed="0.011743"/>
</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-08-10T02:09:37.906001" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:37.904307" elapsed="0.001910"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:37.904283" elapsed="0.001959"/>
</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-08-10T02:09:37.908007" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:37.906295" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:37.906279" elapsed="0.001803"/>
</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-08-10T02:09:37.904068" elapsed="0.004061"/>
</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-08-10T02:09:37.910559" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:37.924069" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:37.924249" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:37.910384" elapsed="0.013904"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:37.908666" elapsed="0.015712"/>
</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-08-10T02:09:37.924637" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:37.924415" elapsed="0.000302"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:37.908649" elapsed="0.016105"/>
</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-08-10T02:09:37.928791" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:37.924859" elapsed="0.004060"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:37.930104" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:37.929267" elapsed="0.000902"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:37.928970" elapsed="0.001278"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:37.924821" elapsed="0.005474"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:37.930411" elapsed="0.000074"/>
</return>
<msg time="2026-08-10T02:09:37.930886" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:37.908416" elapsed="0.022544"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:37.932055" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8292  bytes 56511620 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6025  bytes 1356598 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 216 (216.0 B)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 6  bytes 516 (516.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:37.931298" elapsed="0.000911"/>
</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-08-10T02:09:37.935059" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:38.020608" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:38.020897" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:37.934895" elapsed="0.086060"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:37.933178" elapsed="0.087862"/>
</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-08-10T02:09:38.021453" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:38.021094" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:37.933160" elapsed="0.088463"/>
</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-08-10T02:09:38.025720" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:38.021746" elapsed="0.004121"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:38.027031" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:38.026237" elapsed="0.000856"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:38.025927" elapsed="0.001245"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:38.021709" elapsed="0.005509"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:38.027293" elapsed="0.000096"/>
</return>
<msg time="2026-08-10T02:09:38.027664" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:37.932876" elapsed="0.094847"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:38.028821" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:38.028130" elapsed="0.000783"/>
</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-08-10T02:09:38.029900" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:38.029466" elapsed="0.000516">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:38.029236" elapsed="0.000823">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:38.029222" elapsed="0.000869">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:38.030304" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:38.030160" elapsed="0.000216"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:38.030143" elapsed="0.000257"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:38.029190" elapsed="0.001254">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:38.028980" elapsed="0.001564">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:37.887296" elapsed="0.143358">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:39.048189" elapsed="0.001716"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:39.046449" elapsed="0.003515"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.046421" elapsed="0.003574"/>
</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-08-10T02:09:39.051733" elapsed="0.001932"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:39.050052" elapsed="0.003653"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.050036" elapsed="0.003694"/>
</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-08-10T02:09:39.055474" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:39.053784" elapsed="0.001745"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.053768" elapsed="0.001784"/>
</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-08-10T02:09:39.057283" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:39.055605" elapsed="0.001752"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.055590" elapsed="0.001792"/>
</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-08-10T02:09:39.046173" elapsed="0.011262"/>
</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-08-10T02:09:39.059569" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:39.057887" elapsed="0.001902"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.057870" elapsed="0.001943"/>
</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-08-10T02:09:39.061577" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:39.059867" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.059851" elapsed="0.001800"/>
</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-08-10T02:09:39.057651" elapsed="0.004047"/>
</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-08-10T02:09:39.064104" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:39.078072" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:39.078706" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:39.063926" elapsed="0.014857"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:39.062209" elapsed="0.016720"/>
</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-08-10T02:09:39.079648" elapsed="0.000061"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:39.079020" elapsed="0.000770"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.062192" elapsed="0.017656"/>
</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-08-10T02:09:39.083507" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:39.080012" elapsed="0.003580"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:39.084552" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:39.083817" elapsed="0.000779"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:39.083624" elapsed="0.001022"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.079967" elapsed="0.004711"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:39.084742" elapsed="0.000064"/>
</return>
<msg time="2026-08-10T02:09:39.085006" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:39.061961" elapsed="0.023086"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:39.085790" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8304  bytes 56513114 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6038  bytes 1359776 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 216 (216.0 B)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 6  bytes 516 (516.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:39.085273" elapsed="0.000758"/>
</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-08-10T02:09:39.089492" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:39.188965" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:39.189253" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:39.089293" elapsed="0.100021"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:39.086931" elapsed="0.102518"/>
</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-08-10T02:09:39.189844" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:39.189509" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.086906" elapsed="0.103112"/>
</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-08-10T02:09:39.194638" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:39.190146" elapsed="0.004629"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:39.195980" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:39.195140" elapsed="0.000908"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:39.194830" elapsed="0.001303"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:39.190109" elapsed="0.006073"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:39.196262" elapsed="0.000065"/>
</return>
<msg time="2026-08-10T02:09:39.196733" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:39.086501" elapsed="0.110298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:39.197830" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:39.197135" elapsed="0.000769"/>
</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-08-10T02:09:39.198963" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:39.198489" elapsed="0.000570">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:39.198243" elapsed="0.000899">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:39.198227" elapsed="0.000955">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:39.199425" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:39.199256" elapsed="0.000229"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:39.199238" elapsed="0.000271"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:39.198193" elapsed="0.001361">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:39.197966" elapsed="0.001653">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:39.041885" elapsed="0.157845">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:40.217719" elapsed="0.001835"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.215776" elapsed="0.003860"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.215735" elapsed="0.003940"/>
</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-08-10T02:09:40.221487" elapsed="0.001997"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.219736" elapsed="0.003790"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.219720" 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-08-10T02:09:40.225347" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.223606" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.223590" elapsed="0.001841"/>
</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-08-10T02:09:40.227175" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.225485" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.225470" elapsed="0.001789"/>
</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-08-10T02:09:40.215491" elapsed="0.011827"/>
</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-08-10T02:09:40.229564" elapsed="0.000247"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.227809" elapsed="0.002036"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.227791" elapsed="0.002079"/>
</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-08-10T02:09:40.231639" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.229924" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.229908" elapsed="0.001808"/>
</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-08-10T02:09:40.227568" elapsed="0.004195"/>
</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-08-10T02:09:40.234523" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:40.248736" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:40.248934" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:40.234311" elapsed="0.014663"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.232312" elapsed="0.016718"/>
</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-08-10T02:09:40.249377" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.249085" elapsed="0.000375"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.232294" elapsed="0.017196"/>
</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-08-10T02:09:40.253526" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.249575" elapsed="0.004086"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.254968" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:40.254021" elapsed="0.001014"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.253713" elapsed="0.001403"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.249550" elapsed="0.005614"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:40.255252" elapsed="0.000126"/>
</return>
<msg time="2026-08-10T02:09:40.255671" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:40.232056" elapsed="0.023680"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.256765" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8316  bytes 56514418 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6052  bytes 1363132 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:40.256079" elapsed="0.001043"/>
</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-08-10T02:09:40.259930" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:40.380995" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:40.381399" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:40.259758" elapsed="0.121710"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.258023" elapsed="0.123541"/>
</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-08-10T02:09:40.381976" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.381626" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.258005" elapsed="0.124148"/>
</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-08-10T02:09:40.386401" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.382283" elapsed="0.004259"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.387760" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:40.386911" elapsed="0.000917"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.386596" elapsed="0.001314"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.382247" elapsed="0.005712"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:40.388038" elapsed="0.000067"/>
</return>
<msg time="2026-08-10T02:09:40.388428" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:40.257741" elapsed="0.130752"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.389693" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:40.388836" elapsed="0.000944"/>
</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-08-10T02:09:40.390427" elapsed="0.000431"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.390177" elapsed="0.000727"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.390162" elapsed="0.000768"/>
</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-08-10T02:09:40.391210" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.390985" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.390969" elapsed="0.000329"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="PASS" start="2026-08-10T02:09:40.390122" elapsed="0.001200"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:09:40.389849" elapsed="0.001524"/>
</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-08-10T02:09:40.211832" elapsed="0.179605"/>
</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-08-10T02:09:34.471860" elapsed="5.919641"/>
</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-08-10T02:09:40.393852" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.392012" elapsed="0.002064"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.391994" elapsed="0.002107"/>
</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-08-10T02:09:40.395878" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.394156" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.394140" elapsed="0.001816"/>
</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-08-10T02:09:40.391757" elapsed="0.004248"/>
</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-08-10T02:09:34.116002" elapsed="6.280061"/>
</kw>
<kw name="Enable OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.396861" 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-08-10T02:09:40.396599" elapsed="0.000319"/>
</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-08-10T02:09:40.407680" elapsed="0.001680"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.402431" elapsed="0.006969"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.402405" elapsed="0.007020"/>
</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-08-10T02:09:40.411181" elapsed="0.002092"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.409482" elapsed="0.003835"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.409465" 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-08-10T02:09:40.415120" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.413418" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.413401" elapsed="0.001800"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:40.416955" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.415256" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.415240" 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-08-10T02:09:40.402078" elapsed="0.015009"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.417736" level="INFO">sudo ovs-vsctl set-controller s1 tcp:10.30.170.209</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:40.417439" elapsed="0.000356"/>
</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-08-10T02:09:40.419966" elapsed="0.000170"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.418242" elapsed="0.001928"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.418224" elapsed="0.001970"/>
</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-08-10T02:09:40.421986" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.420249" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.420233" elapsed="0.001829"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:40.418007" elapsed="0.004102"/>
</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-08-10T02:09:40.424563" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:10.30.170.209'.</msg>
<msg time="2026-08-10T02:09:40.447975" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:40.448252" 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-08-10T02:09:40.424394" elapsed="0.023914"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.422659" elapsed="0.025770"/>
</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-08-10T02:09:40.448819" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.448488" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.422641" elapsed="0.026350"/>
</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-08-10T02:09:40.453089" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.449116" elapsed="0.004129"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.454446" 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-08-10T02:09:40.453642" elapsed="0.000866"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.453298" elapsed="0.001291"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.449078" elapsed="0.005558"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:40.454715" elapsed="0.000068"/>
</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-08-10T02:09:40.422381" elapsed="0.032615"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:10.30.170.209</var>
<status status="PASS" start="2026-08-10T02:09:40.417295" elapsed="0.037783"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-08-10T02:09:40.417152" elapsed="0.037993"/>
</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-08-10T02:09:40.399472" elapsed="0.055788"/>
</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-08-10T02:09:40.461685" elapsed="0.000172"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.456295" elapsed="0.005598"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.456257" elapsed="0.005659"/>
</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-08-10T02:09:40.463664" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.461970" elapsed="0.001746"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.461954" elapsed="0.001788"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:40.455773" elapsed="0.008017"/>
</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-08-10T02:09:40.546925" elapsed="0.001966"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.479976" elapsed="0.068985"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.479942" elapsed="0.069056"/>
</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-08-10T02:09:40.550928" elapsed="0.002011"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.549083" elapsed="0.003898"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.549063" elapsed="0.003943"/>
</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-08-10T02:09:40.554920" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.553061" elapsed="0.001917"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.553044" elapsed="0.001958"/>
</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-08-10T02:09:40.556770" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.555057" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.555041" elapsed="0.001812"/>
</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-08-10T02:09:40.479703" elapsed="0.077220"/>
</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-08-10T02:09:40.559288" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.557585" elapsed="0.001957"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.557567" elapsed="0.002001"/>
</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-08-10T02:09:40.561358" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.559622" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.559606" elapsed="0.001831"/>
</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-08-10T02:09:40.557267" elapsed="0.004220"/>
</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-08-10T02:09:40.563927" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:40.577417" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:40.577728" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:40.563740" elapsed="0.014055"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.562018" elapsed="0.015874"/>
</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-08-10T02:09:40.578371" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.577956" elapsed="0.000557"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.562000" elapsed="0.016565"/>
</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-08-10T02:09:40.588614" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.578698" elapsed="0.009978"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.589305" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:40.588838" elapsed="0.000514"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.588700" elapsed="0.000689"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.578660" elapsed="0.010752"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:40.589454" elapsed="0.000048"/>
</return>
<msg time="2026-08-10T02:09:40.589637" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:40.561760" elapsed="0.027906"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.590126" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8333  bytes 56516340 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6072  bytes 1367156 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:40.589824" elapsed="0.000447"/>
</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-08-10T02:09:40.592722" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:40.647739" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:40.648020" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:40.592556" elapsed="0.055522"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.590839" elapsed="0.057325"/>
</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-08-10T02:09:40.648597" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.648220" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.590821" elapsed="0.057950"/>
</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-08-10T02:09:40.652800" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.648895" elapsed="0.004036"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.654039" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:40.653372" elapsed="0.000705"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:40.652984" elapsed="0.001143"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:40.648860" elapsed="0.005296"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:40.654204" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:40.654439" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:40.590555" elapsed="0.063922"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:40.655086" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:40.654691" elapsed="0.000473"/>
</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-08-10T02:09:40.656582" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:40.655935" elapsed="0.000776">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:40.655635" elapsed="0.001192">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:40.655615" elapsed="0.001258">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:40.657429" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:40.657172" elapsed="0.000338"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:40.656947" elapsed="0.000596"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:40.655569" elapsed="0.002040">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:40.655242" elapsed="0.002457">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:40.476324" elapsed="0.181531">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:41.675758" elapsed="0.001766"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:41.673772" elapsed="0.003821"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.673729" elapsed="0.003901"/>
</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-08-10T02:09:41.679523" elapsed="0.001967"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:41.677688" elapsed="0.003843"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.677672" elapsed="0.003885"/>
</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-08-10T02:09:41.683360" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:41.681612" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.681595" elapsed="0.001847"/>
</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-08-10T02:09:41.685175" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:41.683496" elapsed="0.001737"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.683481" elapsed="0.001776"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:41.673408" elapsed="0.011904"/>
</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-08-10T02:09:41.687503" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:41.685795" elapsed="0.001943"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.685766" elapsed="0.001997"/>
</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-08-10T02:09:41.689511" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:41.687816" elapsed="0.001747"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.687800" elapsed="0.001787"/>
</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-08-10T02:09:41.685550" elapsed="0.004082"/>
</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-08-10T02:09:41.692093" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:41.705634" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:41.705851" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:41.691911" elapsed="0.013983"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:41.690184" elapsed="0.015763"/>
</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-08-10T02:09:41.706225" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:41.705982" elapsed="0.000325"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.690167" elapsed="0.016197"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:41.710093" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:41.706444" elapsed="0.003778"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:41.711590" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:41.710619" elapsed="0.001038"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:41.710275" elapsed="0.001465"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.706422" elapsed="0.005366"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:41.711872" elapsed="0.000086"/>
</return>
<msg time="2026-08-10T02:09:41.712238" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:41.689932" elapsed="0.022367"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:41.713304" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8356  bytes 56518748 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6096  bytes 1377484 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:41.712675" elapsed="0.000820"/>
</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-08-10T02:09:41.716943" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:41.826617" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:41.826988" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:41.716774" elapsed="0.110275"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:41.714779" elapsed="0.112356"/>
</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-08-10T02:09:41.827586" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:41.827192" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.714740" elapsed="0.113019"/>
</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-08-10T02:09:41.831873" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:41.827885" elapsed="0.004116"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:41.833184" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:41.832388" elapsed="0.000857"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:41.832054" elapsed="0.001270"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:41.827849" elapsed="0.005558"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:41.833487" elapsed="0.000069"/>
</return>
<msg time="2026-08-10T02:09:41.833833" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:41.714129" elapsed="0.119814"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:41.834950" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:41.834278" elapsed="0.000744"/>
</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-08-10T02:09:41.836064" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:41.835605" elapsed="0.000548">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:41.835383" elapsed="0.000851">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:41.835368" elapsed="0.000900">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:41.836502" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:41.836352" elapsed="0.000206"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:41.836319" elapsed="0.000262"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:41.835316" elapsed="0.001310">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:41.835089" elapsed="0.001601">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:41.668662" elapsed="0.168139">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:42.854551" elapsed="0.001795"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:42.852698" elapsed="0.003716"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:42.852665" 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-08-10T02:09:42.858224" elapsed="0.002012"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:42.856516" elapsed="0.003761"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:42.856500" elapsed="0.003802"/>
</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-08-10T02:09:42.862223" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:42.860396" elapsed="0.001885"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:42.860378" elapsed="0.001928"/>
</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-08-10T02:09:42.864114" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:42.862380" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:42.862362" elapsed="0.001837"/>
</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-08-10T02:09:42.852430" elapsed="0.011822"/>
</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-08-10T02:09:42.866722" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:42.864744" elapsed="0.002208"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:42.864726" elapsed="0.002251"/>
</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-08-10T02:09:42.868762" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:42.867032" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:42.867016" elapsed="0.001822"/>
</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-08-10T02:09:42.864495" elapsed="0.004391"/>
</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-08-10T02:09:42.871376" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:42.885156" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:42.885555" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:42.871176" elapsed="0.014449"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:42.869438" elapsed="0.016287"/>
</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-08-10T02:09:42.886232" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:42.885798" elapsed="0.000651"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:42.869420" elapsed="0.017084"/>
</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-08-10T02:09:42.891155" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:42.886653" elapsed="0.004650"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:42.892742" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:42.891732" elapsed="0.001081"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:42.891399" elapsed="0.001503"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:42.886612" elapsed="0.006342"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:42.893044" elapsed="0.000091"/>
</return>
<msg time="2026-08-10T02:09:42.893516" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:42.869162" elapsed="0.024423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:42.894780" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8370  bytes 56520192 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6113  bytes 1380934 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:42.893955" elapsed="0.000991"/>
</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-08-10T02:09:42.898543" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:43.027066" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:43.027685" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:42.898245" elapsed="0.129508"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:42.895800" elapsed="0.132087"/>
</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-08-10T02:09:43.028752" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:43.028154" elapsed="0.000734"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:42.895775" elapsed="0.133161"/>
</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-08-10T02:09:43.032489" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:43.029089" elapsed="0.003484"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:43.033530" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:43.032802" elapsed="0.000768"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:43.032607" elapsed="0.001013"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:43.029046" elapsed="0.004605"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:43.033714" elapsed="0.000067"/>
</return>
<msg time="2026-08-10T02:09:43.033989" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:42.895392" elapsed="0.138635"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:43.034700" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:43.034247" elapsed="0.000541"/>
</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-08-10T02:09:43.036272" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:43.035634" elapsed="0.000793">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:43.035303" elapsed="0.001242">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:43.035282" elapsed="0.001309">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:43.036895" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:43.036686" elapsed="0.000287"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:43.036663" elapsed="0.000341"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:43.035234" elapsed="0.001832">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:43.034877" elapsed="0.002276">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:42.848013" elapsed="0.189301">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:44.057315" elapsed="0.001855"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:44.055441" elapsed="0.003793"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.055404" elapsed="0.003859"/>
</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-08-10T02:09:44.061024" elapsed="0.001928"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:44.059319" elapsed="0.003675"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.059303" elapsed="0.003748"/>
</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-08-10T02:09:44.064820" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:44.063110" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.063094" elapsed="0.001807"/>
</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-08-10T02:09:44.066644" elapsed="0.000141"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:44.064955" elapsed="0.001873"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.064939" elapsed="0.001913"/>
</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-08-10T02:09:44.055043" elapsed="0.011862"/>
</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-08-10T02:09:44.069091" elapsed="0.000193"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:44.067413" elapsed="0.001906"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.067395" elapsed="0.001965"/>
</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-08-10T02:09:44.071150" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:44.069416" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.069399" elapsed="0.001828"/>
</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-08-10T02:09:44.067152" 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-08-10T02:09:44.073711" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:44.087102" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:44.087292" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:44.073530" elapsed="0.013832"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:44.071815" elapsed="0.015605"/>
</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-08-10T02:09:44.087693" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:44.087457" elapsed="0.000323"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.071798" elapsed="0.016018"/>
</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-08-10T02:09:44.090409" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:44.087912" elapsed="0.002582"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:44.091329" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:44.090719" elapsed="0.000677"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:44.090528" elapsed="0.000921"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.087884" elapsed="0.003595"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:44.091534" elapsed="0.000057"/>
</return>
<msg time="2026-08-10T02:09:44.091769" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:44.071560" elapsed="0.020252"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:44.092470" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8394  bytes 56522500 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6136  bytes 1391188 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:44.092026" elapsed="0.000554"/>
</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-08-10T02:09:44.096249" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:44.216197" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:44.216514" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:44.096013" elapsed="0.120562"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:44.093428" elapsed="0.123235"/>
</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-08-10T02:09:44.217043" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:44.216721" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.093400" elapsed="0.123815"/>
</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-08-10T02:09:44.221665" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:44.217381" elapsed="0.004419"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:44.222977" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:44.222158" elapsed="0.000883"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:44.221854" elapsed="0.001325"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:44.217303" elapsed="0.005925"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:44.223307" elapsed="0.000097"/>
</return>
<msg time="2026-08-10T02:09:44.223687" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:44.092986" elapsed="0.130761"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:44.224391" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:44.223974" 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">
<msg time="2026-08-10T02:09:44.225829" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:44.225203" elapsed="0.000739">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:44.224900" elapsed="0.001145">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:44.224879" elapsed="0.001213">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:44.226413" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:44.226188" elapsed="0.000306"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:44.226165" elapsed="0.000361"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:44.224837" elapsed="0.001751">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:44.224548" elapsed="0.002124">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:44.050305" elapsed="0.176508">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:45.245914" elapsed="0.001877"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.243590" elapsed="0.004287"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.243538" elapsed="0.004382"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-08-10T02:09:45.249689" elapsed="0.002046"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.247981" elapsed="0.003799"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.247965" elapsed="0.003839"/>
</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-08-10T02:09:45.253576" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.251862" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.251846" elapsed="0.001813"/>
</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-08-10T02:09:45.255414" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.253712" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.253697" elapsed="0.001800"/>
</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-08-10T02:09:45.243182" elapsed="0.012375"/>
</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-08-10T02:09:45.257987" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.256286" elapsed="0.001958"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.256269" elapsed="0.002000"/>
</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-08-10T02:09:45.266006" elapsed="0.000094"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.258323" elapsed="0.007889"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.258307" elapsed="0.007971"/>
</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-08-10T02:09:45.256038" elapsed="0.010470"/>
</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-08-10T02:09:45.273436" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:45.288890" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:45.289249" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:45.272728" elapsed="0.016557"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.268115" elapsed="0.021282"/>
</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-08-10T02:09:45.289832" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.289452" elapsed="0.000448"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.268072" elapsed="0.021851"/>
</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-08-10T02:09:45.292283" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.290020" elapsed="0.002381"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.293413" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:45.292645" elapsed="0.000813"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.292437" elapsed="0.001076"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.289996" elapsed="0.003549"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:45.293610" elapsed="0.000071"/>
</return>
<msg time="2026-08-10T02:09:45.293896" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:45.267363" elapsed="0.026576"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.294633" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8408  bytes 56523944 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6151  bytes 1394506 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:45.294180" elapsed="0.000557"/>
</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-08-10T02:09:45.298585" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:45.420772" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:45.421297" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:45.298323" elapsed="0.123084"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.295708" elapsed="0.125840"/>
</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-08-10T02:09:45.422199" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.421638" elapsed="0.000725"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.295681" elapsed="0.126732"/>
</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-08-10T02:09:45.426924" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.422581" elapsed="0.004472"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.428495" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:45.427450" elapsed="0.001235"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.427106" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.422535" elapsed="0.006281"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:45.428907" elapsed="0.000092"/>
</return>
<msg time="2026-08-10T02:09:45.429309" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:45.295207" elapsed="0.134193"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.430421" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:45.429749" elapsed="0.000803"/>
</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-08-10T02:09:45.431894" elapsed="0.000884"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.431326" elapsed="0.001540"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.431294" elapsed="0.001610"/>
</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-08-10T02:09:45.433182" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.432958" elapsed="0.000280"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.432942" elapsed="0.000320"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="PASS" start="2026-08-10T02:09:45.431222" elapsed="0.002063"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:09:45.430682" elapsed="0.002638"/>
</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-08-10T02:09:45.238201" elapsed="0.195210"/>
</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-08-10T02:09:40.463966" elapsed="4.969510"/>
</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-08-10T02:09:40.396257" elapsed="5.037299"/>
</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-08-10T02:09:45.436374" elapsed="0.001647"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.434593" elapsed="0.003466"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.434575" elapsed="0.003508"/>
</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-08-10T02:09:45.439857" elapsed="0.001958"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.438136" elapsed="0.003720"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.438121" elapsed="0.003760"/>
</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-08-10T02:09:45.443643" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.441935" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.441919" elapsed="0.001841"/>
</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-08-10T02:09:45.445522" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.443821" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.443805" 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-08-10T02:09:45.434360" elapsed="0.011291"/>
</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-08-10T02:09:45.448030" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.446098" elapsed="0.002155"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.446081" elapsed="0.002196"/>
</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-08-10T02:09:45.450030" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.448347" elapsed="0.001735"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.448316" elapsed="0.001789"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:45.445867" elapsed="0.004284"/>
</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-08-10T02:09:45.453939" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-08-10T02:09:45.471275" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:45.471572" level="INFO">${output} = 52:8d:1e:48:e6:49</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:45.453768" elapsed="0.017929"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.452053" elapsed="0.019761"/>
</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-08-10T02:09:45.472196" elapsed="0.000045"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.471871" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.452036" elapsed="0.020363"/>
</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-08-10T02:09:45.476434" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.472522" elapsed="0.004042"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.477709" level="INFO">${output} = 52:8d:1e:48:e6:49</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-08-10T02:09:45.476914" elapsed="0.000853"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.476616" elapsed="0.001233"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.472487" elapsed="0.005407"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:45.477970" elapsed="0.000062"/>
</return>
<msg time="2026-08-10T02:09:45.478406" level="INFO">${switch.datapath_id_output_string} = 52:8d:1e:48:e6:49</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-08-10T02:09:45.450429" elapsed="0.028036"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.481589" level="INFO">52:8d:1e:48:e6:49</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:45.478798" elapsed="0.002848"/>
</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-08-10T02:09:45.481797" elapsed="0.000407"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-08-10T02:09:45.482253" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:45.484041" level="INFO">${datapath_id_from_switch} = 90766051960393</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-08-10T02:09:45.433818" elapsed="0.050250"/>
</kw>
<kw name="Verify Switch In Operational Data Store" owner="SwitchUtils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:45.496867" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:09:45.497919" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01r8n4skpu402e1ghd0h7totjvc10.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:09: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:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:90766051960393","flow-node-inventory:port-number":58416,"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":"7","active-flows":1,"packets-matched":"5"},"flow":[{"id":"#UF$TABLE*0-67","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":46000000}},"flags":"SEND_FLOW_REM"}]},{"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-sta... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:09:45.498672" 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-08-10T02:09:45.484571" elapsed="0.014162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.504583" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:90766051960393","flow-node-inventory:port-number":58416,"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":"7","active-flows":1,"packets-matched":"5"},"flow":[{"id":"#UF$TABLE*0-67","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":46000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:09:43.634Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:90766051960393:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"52:8d:1e:48:e6:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"3","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":9,"nanosecond":392000000},"bytes":{"transmitted":"586","received":"324"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:09:43.650Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:45.499170" elapsed="0.005973"/>
</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-08-10T02:09:45.505299" elapsed="0.004110"/>
</kw>
<arg>${test_switch}</arg>
<doc>Verifies the existence of the switch.datapath_id in the operational datastore.</doc>
<status status="PASS" start="2026-08-10T02:09:45.484242" elapsed="0.025233"/>
</kw>
<kw name="Disable OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.510215" 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-08-10T02:09:45.509961" elapsed="0.000312"/>
</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-08-10T02:09:45.516714" elapsed="0.001657"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.514751" elapsed="0.003660"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.514731" elapsed="0.003706"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-08-10T02:09:45.520200" elapsed="0.001914"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.518493" elapsed="0.003663"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.518477" elapsed="0.003703"/>
</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-08-10T02:09:45.526944" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.522235" elapsed="0.004768"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.522219" elapsed="0.004808"/>
</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-08-10T02:09:45.528820" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.527082" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.527066" elapsed="0.001837"/>
</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-08-10T02:09:45.514512" elapsed="0.014440"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.529623" 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-08-10T02:09:45.529299" elapsed="0.000382"/>
</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-08-10T02:09:45.531886" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.530132" elapsed="0.001967"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.530114" elapsed="0.002010"/>
</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-08-10T02:09:45.533886" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.532178" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.532162" elapsed="0.001799"/>
</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-08-10T02:09:45.529899" elapsed="0.004109"/>
</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-08-10T02:09:45.536467" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:1.1.1.1'.</msg>
<msg time="2026-08-10T02:09:45.568911" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:45.569171" 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-08-10T02:09:45.536281" elapsed="0.032944"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.534560" elapsed="0.034748"/>
</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-08-10T02:09:45.569729" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.569409" elapsed="0.000442"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.534543" elapsed="0.035358"/>
</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-08-10T02:09:45.574082" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.570025" elapsed="0.004190"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.575429" 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-08-10T02:09:45.574605" elapsed="0.000883"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.574267" elapsed="0.001301"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.569990" elapsed="0.005624"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:45.575692" elapsed="0.000068"/>
</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-08-10T02:09:45.534266" elapsed="0.041792"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:1.1.1.1</var>
<status status="PASS" start="2026-08-10T02:09:45.529164" elapsed="0.046977"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-08-10T02:09:45.529006" elapsed="0.047204"/>
</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-08-10T02:09:45.512655" elapsed="0.063672"/>
</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-08-10T02:09:45.581423" elapsed="0.000362"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.577503" elapsed="0.004356"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.577463" elapsed="0.004451"/>
</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-08-10T02:09:45.585430" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.582033" elapsed="0.003450"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.581999" elapsed="0.003506"/>
</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-08-10T02:09:45.576841" elapsed="0.008712"/>
</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-08-10T02:09:45.597063" elapsed="0.001634"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.595194" elapsed="0.003542"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.595176" elapsed="0.003585"/>
</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-08-10T02:09:45.600547" elapsed="0.001887"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.598815" elapsed="0.003661"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.598799" elapsed="0.003702"/>
</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-08-10T02:09:45.604315" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.602555" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.602540" elapsed="0.001874"/>
</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-08-10T02:09:45.606154" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.604468" elapsed="0.001744"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.604452" elapsed="0.001784"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:45.594962" elapsed="0.011322"/>
</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-08-10T02:09:45.608497" elapsed="0.000164"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.606743" elapsed="0.001952"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.606726" elapsed="0.001994"/>
</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-08-10T02:09:45.610473" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.608774" elapsed="0.001751"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.608758" elapsed="0.001790"/>
</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-08-10T02:09:45.606507" elapsed="0.004088"/>
</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-08-10T02:09:45.613000" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:45.625222" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:45.625415" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:45.612835" elapsed="0.012621"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.611097" elapsed="0.014412"/>
</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-08-10T02:09:45.625744" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.625544" elapsed="0.000277"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.611080" elapsed="0.014770"/>
</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-08-10T02:09:45.628369" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.625925" elapsed="0.002529"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.629155" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:45.628677" elapsed="0.000519"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.628487" elapsed="0.000759"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.625903" elapsed="0.003373"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:45.629323" elapsed="0.000065"/>
</return>
<msg time="2026-08-10T02:09:45.629560" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:45.610847" elapsed="0.018752"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.630259" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8430  bytes 56526516 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6180  bytes 1399564 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:45.629855" 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-08-10T02:09:45.633855" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:45.685549" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:45.685810" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    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-08-10T02:09:45.633615" elapsed="0.052256"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.631133" elapsed="0.054838"/>
</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-08-10T02:09:45.686387" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.686027" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.631109" elapsed="0.055451"/>
</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-08-10T02:09:45.690590" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.686681" elapsed="0.004039"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.691918" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    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-08-10T02:09:45.691074" elapsed="0.000908"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:45.690772" elapsed="0.001291"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:45.686647" elapsed="0.005463"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:45.692187" elapsed="0.000063"/>
</return>
<msg time="2026-08-10T02:09:45.692554" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    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-08-10T02:09:45.630743" elapsed="0.061871"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.693352" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    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-08-10T02:09:45.692941" elapsed="0.000493"/>
</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-08-10T02:09:45.694009" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.693812" elapsed="0.000275"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:45.693792" elapsed="0.000326"/>
</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-08-10T02:09:45.694400" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:45.694190" elapsed="0.000286"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:45.694170" elapsed="0.000337"/>
</if>
<var name="${str}"/>
<status status="NOT RUN" start="2026-08-10T02:09:45.693753" elapsed="0.000785"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="NOT RUN" start="2026-08-10T02:09:45.693500" elapsed="0.001072"/>
</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-08-10T02:09:45.591754" elapsed="0.102892"/>
</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-08-10T02:09:45.585719" elapsed="0.109000"/>
</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-08-10T02:09:45.509646" elapsed="0.185161"/>
</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-08-10T02:09:45.705370" level="INFO">GET Request : url=http://10.30.170.209: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=node01r8n4skpu402e1ghd0h7totjvc10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:45.705837" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:90766051960393","flow-node-inventory:port-number":58416,"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":"7","active-flows":1,"packets-matched":"5"},"flow":[{"id":"#UF$TABLE*0-67","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":46000000}},"flags":"SEND_FLOW_REM"}]},{"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-sta... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:09:45.706095" 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-08-10T02:09:45.696125" elapsed="0.009997"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.708660" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:90766051960393","flow-node-inventory:port-number":58416,"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":"7","active-flows":1,"packets-matched":"5"},"flow":[{"id":"#UF$TABLE*0-67","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":46000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:09:43.634Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:90766051960393:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"52:8d:1e:48:e6:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"3","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":9,"nanosecond":392000000},"bytes":{"transmitted":"586","received":"324"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:09:43.650Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:45.706278" elapsed="0.002823"/>
</kw>
<kw name="Should Not Match Regexp" owner="BuiltIn">
<msg time="2026-08-10T02:09:45.715409" level="FAIL">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:90766051960393","flow-node-inventory:port-number":58416,"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":"7","active-flows":1,"packets-matched":"5"},"flow":[{"id":"#UF$TABLE*0-67","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":46000000}},"flags":"SEND_FLOW_REM"}]},{"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-08-10T02:09:43.634Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:90766051960393:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"52:8d:1e:48:e6:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"3","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":9,"nanosecond":392000000},"bytes":{"transmitted":"586","received":"324"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:09:43.650Z"}}]}}' matches 'openflow:90766051960393'</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-08-10T02:09:45.709312" elapsed="0.006755">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:90766051960393","flow-node-inventory:port-number":58416,"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...
    [ Message content over the limit has been removed. ]
...","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-08-10T02:09:43.634Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:90766051960393:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"52:8d:1e:48:e6:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"3","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":9,"nanosecond":392000000},"bytes":{"transmitted":"586","received":"324"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:09:43.650Z"}}]}}' matches 'openflow:90766051960393'</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-08-10T02:09:45.695677" elapsed="0.020625">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:90766051960393","flow-node-inventory:port-number":58416,"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...
    [ Message content over the limit has been removed. ]
...","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-08-10T02:09:43.634Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:90766051960393:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"52:8d:1e:48:e6:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"3","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":9,"nanosecond":392000000},"bytes":{"transmitted":"586","received":"324"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:09:43.650Z"}}]}}' matches 'openflow:90766051960393'</status>
</kw>
<kw name="Verify Switch Not In Operational Data Store" owner="SwitchUtils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:46.726826" level="INFO">GET Request : url=http://10.30.170.209: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=node01r8n4skpu402e1ghd0h7totjvc10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:46.727072" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:09:46.727295" 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-08-10T02:09:46.720791" elapsed="0.006565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:46.730707" 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-08-10T02:09:46.727616" elapsed="0.003282"/>
</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-08-10T02:09:46.731113" elapsed="0.005368"/>
</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-08-10T02:09:46.720048" elapsed="0.016531"/>
</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-08-10T02:09:45.695019" elapsed="1.041628"/>
</kw>
<tag>switch_qualification</tag>
<timeout value="5 minutes"/>
<status status="PASS" start="2026-08-10T02:09:34.115185" elapsed="12.621660"/>
</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-08-10T02:09:46.744183" elapsed="0.001645"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:46.742450" elapsed="0.003417"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:46.742421" elapsed="0.003477"/>
</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-08-10T02:09:46.747663" elapsed="0.001898"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:46.745954" elapsed="0.003654"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:46.745938" elapsed="0.003696"/>
</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-08-10T02:09:46.751401" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:46.749690" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:46.749674" elapsed="0.001808"/>
</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-08-10T02:09:46.753264" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:46.751535" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:46.751520" elapsed="0.001845"/>
</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-08-10T02:09:46.742218" elapsed="0.011195"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:46.754042" 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-08-10T02:09:46.753780" elapsed="0.000309"/>
</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-08-10T02:09:46.756433" elapsed="0.000140"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:46.754514" elapsed="0.002092"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:46.754496" elapsed="0.002135"/>
</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-08-10T02:09:46.758398" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:46.756685" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:46.756668" elapsed="0.001808"/>
</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-08-10T02:09:46.754307" elapsed="0.004216"/>
</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-08-10T02:09:46.760933" level="INFO">Executing command '/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh'.</msg>
<msg time="2026-08-10T02:09:46.864721" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-08-10T02:09:46.864949" 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-08-10T02:09:46.760792" elapsed="0.104214"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:46.759023" elapsed="0.106068"/>
</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-08-10T02:09:46.865542" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:46.865150" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:46.759005" elapsed="0.106709"/>
</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-08-10T02:09:46.869743" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:46.865836" elapsed="0.004035"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:46.870932" 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-08-10T02:09:46.870223" elapsed="0.000767"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:46.869922" elapsed="0.001147"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:46.865801" elapsed="0.005315"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:46.871198" elapsed="0.000078"/>
</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-08-10T02:09:46.758792" elapsed="0.112734"/>
</kw>
<var name="${cmd}">/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh</var>
<status status="PASS" start="2026-08-10T02:09:46.753633" elapsed="0.117975"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-08-10T02:09:46.753471" elapsed="0.118208"/>
</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-08-10T02:09:46.740177" elapsed="0.131713"/>
</kw>
<arg>${test_switch}</arg>
<doc>will execute and command strings stored in switch.cleanup_cmds</doc>
<status status="PASS" start="2026-08-10T02:09:46.737777" elapsed="0.134229"/>
</kw>
<kw name="Close All Connections" owner="SSHLibrary">
<doc>Closes all open connections.</doc>
<status status="PASS" start="2026-08-10T02:09:46.872285" elapsed="0.000557"/>
</kw>
<kw name="Close All Connections" owner="Telnet">
<doc>Closes all open connections and empties the connection cache.</doc>
<status status="PASS" start="2026-08-10T02:09:46.873066" elapsed="0.000168"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:46.737558" elapsed="0.135749"/>
</kw>
<doc>TODO</doc>
<status status="PASS" start="2026-08-10T02:09:31.304776" elapsed="15.568593"/>
</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-08-10T02:09:47.084444" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7777ec063450&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-08-10T02:09:47.084218" elapsed="0.000261"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:47.085094" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7777ec063450&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-08-10T02:09:47.084732" elapsed="0.000407"/>
</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-08-10T02:09:47.085328" elapsed="0.000326"/>
</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-08-10T02:09:47.085851" elapsed="0.000300"/>
</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-08-10T02:09:47.086360" elapsed="0.000300"/>
</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-08-10T02:09:47.088747" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:47.088416" elapsed="0.000388"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:47.088390" elapsed="0.000443"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:09:47.089173" 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-08-10T02:09:47.089278" 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-08-10T02:09:47.088995" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:47.089861" level="INFO">Attempting to execute command "ps -elf | grep java" on remote system "10.30.170.209" 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-08-10T02:09:47.089480" elapsed="0.000428"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:09:47.090464" 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-08-10T02:09:47.090070" elapsed="0.000421"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:09:47.091374" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:09:47.091455" 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-08-10T02:09:47.091068" 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-08-10T02:09:47.091641" elapsed="0.000323"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:09:47.092872" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:09:47.738714" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:47 UTC 2026

  System load:  0.24               Processes:             119
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


[?2004h[jenkins@releng-14419-806-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-08-10T02:09:47.092516" elapsed="0.646380"/>
</kw>
<msg time="2026-08-10T02:09:47.738991" 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-08-10T02:09:47.092139" elapsed="0.646949"/>
</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-08-10T02:09:47.090716" elapsed="0.648496"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:09:47.739857" level="INFO">Executing command 'ps -elf | grep java'.</msg>
<msg time="2026-08-10T02:09:47.762790" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:47.763042" level="INFO">${stdout} = 0 S jenkins     2008    1952 45  80   0 - 2296496 futex_ 02:05 ?      00:01:56 /usr/lib/jvm/java-21-openjdk-amd64/bin/java -Djava.security.properties=/tmp/karaf-0.22.3/etc/odl.java.security -XX:+Unloc...</msg>
<msg time="2026-08-10T02:09:47.763143" 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-08-10T02:09:47.739589" elapsed="0.023606"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:09:47.763614" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:47.765291" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:47.764620" 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-08-10T02:09:47.765908" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:09:47.765608" elapsed="0.000409"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:47.765556" 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-08-10T02:09:47.766457" elapsed="0.000066"/>
</return>
<status status="PASS" start="2026-08-10T02:09:47.766185" elapsed="0.000423"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:47.766152" elapsed="0.000519"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:09:47.766753" 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-08-10T02:09:47.774405" elapsed="0.000456"/>
</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-08-10T02:09:47.775102" elapsed="0.000258"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:09:47.775573" elapsed="0.000134"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:09:47.767520" elapsed="0.008258"/>
</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-08-10T02:09:47.087900" elapsed="0.688003"/>
</kw>
<msg time="2026-08-10T02:09:47.776003" 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-08-10T02:09:47.087314" elapsed="0.688755"/>
</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-08-10T02:09:47.086847" elapsed="0.689479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:47.788779" level="INFO">MAKE: OpenVswitch
MODEL: OVS
IP: 10.30.171.177
PROMPT: &gt;
CONTROLLER_IP: 10.30.170.209
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-08-10T02:09:47.776616" elapsed="0.012211"/>
</kw>
<kw name="Ping" owner="SwitchUtils">
<kw name="Run" owner="OperatingSystem">
<msg time="2026-08-10T02:09:47.792371" level="INFO">Running command 'ping 10.30.171.177 -c 1 -W 1 2&gt;&amp;1'.</msg>
<msg time="2026-08-10T02:09:47.796866" level="INFO">${output} = PING 10.30.171.177 (10.30.171.177) 56(84) bytes of data.
64 bytes from 10.30.171.177: icmp_seq=1 ttl=64 time=0.796 ms

--- 10.30.171.177 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-08-10T02:09:47.791319" elapsed="0.005578"/>
</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-08-10T02:09:47.797129" elapsed="0.000354"/>
</kw>
<arg>${test_switch.mgmt_ip}</arg>
<status status="PASS" start="2026-08-10T02:09:47.789049" elapsed="0.008495"/>
</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-08-10T02:09:47.802721" elapsed="0.000477"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:47.799485" elapsed="0.003772"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:47.799459" elapsed="0.003833"/>
</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-08-10T02:09:47.806537" elapsed="0.000311"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:47.803399" elapsed="0.003492"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:47.803374" elapsed="0.003542"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:09:47.813288" 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-08-10T02:09:47.809084" elapsed="0.004231"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:47.806970" elapsed="0.006404"/>
</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-08-10T02:09:47.813650" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:47.813452" elapsed="0.000254"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:47.806954" elapsed="0.006774"/>
</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-08-10T02:09:47.819942" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:09:48.171004" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:09:31 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:09:47.815907" elapsed="0.355206"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:47.813784" elapsed="0.357381"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:47.813768" elapsed="0.357429"/>
</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-08-10T02:09:48.173600" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:48.171274" elapsed="0.002389"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:48.174275" 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-08-10T02:09:48.173896" elapsed="0.000405"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:48.173687" elapsed="0.000667"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:48.171249" elapsed="0.003128"/>
</if>
<return>
<value>${connection_index}</value>
<status status="PASS" start="2026-08-10T02:09:48.174419" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:48.174600" 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-08-10T02:09:47.799190" elapsed="0.375435"/>
</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-08-10T02:09:48.174822" elapsed="0.000309"/>
</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-08-10T02:09:48.177794" elapsed="0.002137"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:48.175703" elapsed="0.004266"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:48.175686" elapsed="0.004308"/>
</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-08-10T02:09:48.182130" elapsed="0.002173"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:48.180047" elapsed="0.004312"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:48.180031" elapsed="0.004354"/>
</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-08-10T02:09:48.186512" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:48.184439" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:48.184423" elapsed="0.002166"/>
</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-08-10T02:09:48.188697" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:48.186645" elapsed="0.002109"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:48.186627" elapsed="0.002150"/>
</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-08-10T02:09:48.175496" elapsed="0.013327"/>
</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-08-10T02:09:48.193487" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:48.191389" elapsed="0.002352"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:48.191371" elapsed="0.002395"/>
</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-08-10T02:09:48.195918" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:48.193830" elapsed="0.002143"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:48.193814" elapsed="0.002182"/>
</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-08-10T02:09:48.191144" elapsed="0.004898"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:09:49.196714" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:09:48.196225" elapsed="1.000694"/>
</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-08-10T02:09:49.201422" level="INFO">pwd</msg>
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-08-10T02:09:49.201203" elapsed="0.000289"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:49.197953" elapsed="0.003584"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:49.197920" elapsed="0.003655"/>
</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-08-10T02:09:49.204592" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:49.201673" elapsed="0.002993"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:49.201649" elapsed="0.003050"/>
</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-08-10T02:09:49.197543" elapsed="0.007225"/>
</kw>
<var name="${cmd}">pwd</var>
<status status="PASS" start="2026-08-10T02:09:48.190917" elapsed="1.013898"/>
</iter>
<var>${cmd}</var>
<value>@{switch.connection_configs}</value>
<status status="PASS" start="2026-08-10T02:09:48.188883" elapsed="1.015981"/>
</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-08-10T02:09:47.798423" elapsed="1.406520"/>
</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-08-10T02:09:49.208573" elapsed="0.002461"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:49.205681" elapsed="0.005391"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:49.205655" elapsed="0.005441"/>
</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-08-10T02:09:49.213204" elapsed="0.002225"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:49.211149" elapsed="0.004320"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:49.211134" elapsed="0.004359"/>
</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-08-10T02:09:49.217605" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:49.215547" elapsed="0.002138"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:49.215531" elapsed="0.002179"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:49.219812" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:49.217763" elapsed="0.002107"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:49.217748" elapsed="0.002145"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:49.205396" elapsed="0.014544"/>
</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-08-10T02:09:49.224486" elapsed="0.000310"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:49.222409" elapsed="0.002426"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:49.222392" elapsed="0.002467"/>
</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-08-10T02:09:49.227108" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:49.224929" elapsed="0.002235"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:49.224912" elapsed="0.002276"/>
</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-08-10T02:09:49.222166" elapsed="0.005068"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.228004" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:09:49.227460" elapsed="1.000788"/>
</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-08-10T02:09:50.236662" 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-08-10T02:09:50.236381" elapsed="0.000388"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.230903" elapsed="0.005937"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.230854" elapsed="0.006047"/>
</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-08-10T02:09:50.240268" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.237022" elapsed="0.003299"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.236986" elapsed="0.003376"/>
</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-08-10T02:09:50.230361" elapsed="0.010053"/>
</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-08-10T02:09:50.228993" elapsed="0.011471"/>
</kw>
<var name="${cmd}">['/sbin/ifconfig -a | egrep \'^s\' | awk \'{print "sudo ovs-vsctl del-br",$1}\' | sh']</var>
<status status="PASS" start="2026-08-10T02:09:49.221938" elapsed="1.018558"/>
</iter>
<var>${cmd}</var>
<value>@{switch.initialization_cmds}</value>
<status status="PASS" start="2026-08-10T02:09:49.219992" elapsed="1.020544"/>
</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-08-10T02:09:50.242687" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.240607" elapsed="0.002222"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.240590" elapsed="0.002265"/>
</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-08-10T02:09:50.245013" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.242911" elapsed="0.002162"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.242895" elapsed="0.002204"/>
</if>
<arg>${test_switch}</arg>
<doc>Will connect and execute all switch.initialization_cmds on the given switch.
In some cases, this may be a reboot.  If so, the switch.initialization_type can
be set to "reboot" and further logic is invoked to wait for the reboot to complete
and a reconnect to the switch is made.</doc>
<status status="PASS" start="2026-08-10T02:09:47.797857" elapsed="2.447296"/>
</kw>
<kw name="Configure OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.245928" 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-08-10T02:09:50.245699" elapsed="0.000275"/>
</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-08-10T02:09:50.248599" elapsed="0.005248"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.246536" elapsed="0.007349"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.246519" elapsed="0.007391"/>
</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-08-10T02:09:50.256068" elapsed="0.002211"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.253963" elapsed="0.004357"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.253947" elapsed="0.004413"/>
</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-08-10T02:09:50.260478" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.258415" elapsed="0.002119"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.258400" elapsed="0.002158"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:50.262723" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.260611" elapsed="0.002170"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.260596" elapsed="0.002208"/>
</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-08-10T02:09:50.246321" elapsed="0.016531"/>
</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-08-10T02:09:50.270053" elapsed="0.002003"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.267986" elapsed="0.004108"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.267969" elapsed="0.004149"/>
</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-08-10T02:09:50.274237" elapsed="0.002178"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.272172" elapsed="0.004282"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.272156" elapsed="0.004322"/>
</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-08-10T02:09:50.278640" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.276532" elapsed="0.002166"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.276516" elapsed="0.002205"/>
</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-08-10T02:09:50.280855" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.278775" elapsed="0.002138"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.278759" 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-08-10T02:09:50.267803" elapsed="0.013181"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.281632" 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-08-10T02:09:50.281379" elapsed="0.000297"/>
</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-08-10T02:09:50.284298" elapsed="0.000133"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.282090" elapsed="0.002375"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.282072" elapsed="0.002417"/>
</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-08-10T02:09:50.286636" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.284543" elapsed="0.002146"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.284527" elapsed="0.002222"/>
</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-08-10T02:09:50.281906" elapsed="0.004894"/>
</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-08-10T02:09:50.289539" level="INFO">Executing command 'sudo ovs-vsctl add-br s1'.</msg>
<msg time="2026-08-10T02:09:50.312884" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-08-10T02:09:50.313095" 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-08-10T02:09:50.289404" elapsed="0.023746"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.287314" elapsed="0.025922"/>
</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-08-10T02:09:50.313771" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.313294" elapsed="0.000604"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.287297" elapsed="0.026647"/>
</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-08-10T02:09:50.318793" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.314067" elapsed="0.004856"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.320065" 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-08-10T02:09:50.319410" elapsed="0.000713"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.318975" elapsed="0.001226"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.314031" elapsed="0.006218"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:50.320330" elapsed="0.000110"/>
</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-08-10T02:09:50.287090" elapsed="0.033566"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl add-br s1</var>
<status status="PASS" start="2026-08-10T02:09:50.281189" elapsed="0.039548"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.321896" 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-08-10T02:09:50.321308" elapsed="0.000688"/>
</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-08-10T02:09:50.325079" elapsed="0.000119"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.323011" elapsed="0.002219"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.322972" elapsed="0.002283"/>
</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-08-10T02:09:50.327413" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.325308" elapsed="0.002158"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.325292" elapsed="0.002197"/>
</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-08-10T02:09:50.322598" elapsed="0.004937"/>
</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-08-10T02:09:50.330255" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-08-10T02:09:50.447845" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:50.448085" 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-08-10T02:09:50.330115" elapsed="0.118026"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.328033" elapsed="0.120198"/>
</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-08-10T02:09:50.448798" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.448293" elapsed="0.000636"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.328016" elapsed="0.120960"/>
</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-08-10T02:09:50.453943" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.449105" elapsed="0.004968"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.455282" 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-08-10T02:09:50.454589" elapsed="0.000785"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.454126" elapsed="0.001330"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.449068" elapsed="0.006436"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:50.455585" elapsed="0.000068"/>
</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-08-10T02:09:50.327807" elapsed="0.128058"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set bridge s1 protocols=OpenFlow13</var>
<status status="PASS" start="2026-08-10T02:09:50.320940" elapsed="0.135009"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.457126" level="INFO">sudo ovs-vsctl set-controller s1 tcp:10.30.170.209</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:50.456574" elapsed="0.000654"/>
</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-08-10T02:09:50.461004" elapsed="0.000127"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.458209" elapsed="0.002955"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.458169" elapsed="0.003021"/>
</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-08-10T02:09:50.463311" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.461244" elapsed="0.002193"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.461229" elapsed="0.002233"/>
</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-08-10T02:09:50.457786" elapsed="0.005724"/>
</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-08-10T02:09:50.466220" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:10.30.170.209'.</msg>
<msg time="2026-08-10T02:09:50.515524" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:50.515734" 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-08-10T02:09:50.466092" elapsed="0.049697"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.464011" elapsed="0.051864"/>
</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-08-10T02:09:50.516404" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.515933" elapsed="0.000602"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.463993" elapsed="0.052588"/>
</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-08-10T02:09:50.521433" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.516705" elapsed="0.004861"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.522760" 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-08-10T02:09:50.522019" elapsed="0.000799"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.521618" elapsed="0.001280"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.516670" elapsed="0.006276"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:50.523021" elapsed="0.000062"/>
</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-08-10T02:09:50.463785" elapsed="0.059504"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:10.30.170.209</var>
<status status="PASS" start="2026-08-10T02:09:50.456162" elapsed="0.067245"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.524565" 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-08-10T02:09:50.523982" elapsed="0.000683"/>
</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-08-10T02:09:50.528498" elapsed="0.000115"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.525629" elapsed="0.003022"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.525590" elapsed="0.003085"/>
</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-08-10T02:09:50.530793" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.528729" elapsed="0.002116"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.528712" elapsed="0.002156"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:50.525179" elapsed="0.005736"/>
</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-08-10T02:09:50.533627" level="INFO">Executing command 'sudo ifconfig s1 up'.</msg>
<msg time="2026-08-10T02:09:50.563300" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:50.563562" 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-08-10T02:09:50.533500" elapsed="0.030120"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.531431" elapsed="0.032278"/>
</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-08-10T02:09:50.564204" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.563768" elapsed="0.000607"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.531414" elapsed="0.033013"/>
</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-08-10T02:09:50.569409" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.564556" elapsed="0.004991"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.570758" 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-08-10T02:09:50.570008" elapsed="0.000811"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.569600" elapsed="0.001298"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.564519" elapsed="0.006427"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:50.571022" elapsed="0.000033"/>
</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-08-10T02:09:50.531189" elapsed="0.039960"/>
</kw>
<var name="${cmd}">sudo ifconfig s1 up</var>
<status status="PASS" start="2026-08-10T02:09:50.523611" elapsed="0.047576"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-08-10T02:09:50.281035" elapsed="0.290182"/>
</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-08-10T02:09:50.265537" elapsed="0.305735"/>
</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-08-10T02:09:50.573797" elapsed="0.000115"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.571720" elapsed="0.002224"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.571704" elapsed="0.002265"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:50.576295" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.574077" elapsed="0.002286"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.574060" elapsed="0.002327"/>
</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-08-10T02:09:50.571532" elapsed="0.004904"/>
</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-08-10T02:09:50.591555" elapsed="0.001998"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.589486" elapsed="0.004105"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.589469" elapsed="0.004146"/>
</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-08-10T02:09:50.595762" elapsed="0.002178"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.593669" elapsed="0.004311"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.593654" elapsed="0.004350"/>
</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-08-10T02:09:50.600131" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.598058" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.598042" elapsed="0.002167"/>
</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-08-10T02:09:50.602319" elapsed="0.000061"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.600262" elapsed="0.002156"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.600247" elapsed="0.002195"/>
</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-08-10T02:09:50.589286" elapsed="0.013208"/>
</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-08-10T02:09:50.604971" elapsed="0.000113"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.602906" elapsed="0.002211"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.602889" elapsed="0.002252"/>
</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-08-10T02:09:50.607260" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.605194" elapsed="0.002118"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.605178" elapsed="0.002173"/>
</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-08-10T02:09:50.602723" elapsed="0.004676"/>
</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-08-10T02:09:50.610087" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:50.622907" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:50.623117" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:50.609960" elapsed="0.013218"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.607878" elapsed="0.015384"/>
</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-08-10T02:09:50.623786" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.623319" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.607861" elapsed="0.016098"/>
</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-08-10T02:09:50.628141" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.624083" elapsed="0.004139"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.628946" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:50.628535" elapsed="0.000452"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.628255" elapsed="0.000780"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.624047" elapsed="0.005018"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:50.629112" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:50.629320" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:50.607676" elapsed="0.021707"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.629990" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8493  bytes 56535414 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6251  bytes 1413260 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:50.629651" elapsed="0.000467"/>
</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-08-10T02:09:50.635499" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:50.681569" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:50.681782" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:50.635368" elapsed="0.046472"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.630867" elapsed="0.051057"/>
</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-08-10T02:09:50.682471" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.681982" elapsed="0.000623"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.630843" elapsed="0.051808"/>
</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-08-10T02:09:50.687367" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.682778" elapsed="0.004674"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.688147" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:50.687738" elapsed="0.000447"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:50.687485" elapsed="0.000750"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:50.682741" elapsed="0.005524"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:50.688312" elapsed="0.000061"/>
</return>
<msg time="2026-08-10T02:09:50.688549" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:50.630550" elapsed="0.058037"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:50.689188" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:50.688850" elapsed="0.000400"/>
</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-08-10T02:09:50.690603" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:50.690039" elapsed="0.000672">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:50.689683" elapsed="0.001134">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:50.689663" elapsed="0.001199">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:50.691227" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:50.690958" elapsed="0.000347"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:50.690935" elapsed="0.000424"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:50.689620" elapsed="0.001804">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:50.689318" elapsed="0.002189">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:50.585415" elapsed="0.106233">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:51.712196" elapsed="0.002025"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:51.709989" elapsed="0.004287"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.709964" elapsed="0.004340"/>
</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-08-10T02:09:51.716535" elapsed="0.002195"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:51.714377" elapsed="0.004394"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.714360" elapsed="0.004435"/>
</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-08-10T02:09:51.720938" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:51.718850" elapsed="0.002144"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.718834" elapsed="0.002183"/>
</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-08-10T02:09:51.723140" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:51.721072" elapsed="0.002127"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.721056" elapsed="0.002167"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:51.709788" elapsed="0.013484"/>
</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-08-10T02:09:51.725767" elapsed="0.000128"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:51.723713" elapsed="0.002218"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.723696" elapsed="0.002260"/>
</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-08-10T02:09:51.728302" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:51.726010" elapsed="0.002362"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.725994" elapsed="0.002403"/>
</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-08-10T02:09:51.723526" elapsed="0.004919"/>
</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-08-10T02:09:51.731164" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:51.744898" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:51.745045" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:51.731024" elapsed="0.014070"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:51.728942" elapsed="0.016245"/>
</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-08-10T02:09:51.745740" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:51.745249" elapsed="0.000621"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.728925" elapsed="0.016991"/>
</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-08-10T02:09:51.750759" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:51.746039" elapsed="0.004853"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:51.752122" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:51.751409" elapsed="0.000777"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:51.750968" elapsed="0.001300"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.746003" elapsed="0.006312"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:51.752435" elapsed="0.000076"/>
</return>
<msg time="2026-08-10T02:09:51.752786" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:51.728737" elapsed="0.024109"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:51.753860" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8524  bytes 56538700 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6284  bytes 1425486 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:51.753275" elapsed="0.000711"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:09:51.758015" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:51.876955" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:51.877283" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:51.757888" elapsed="0.119501"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:51.755205" elapsed="0.122277"/>
</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-08-10T02:09:51.877972" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:51.877541" elapsed="0.000561"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.755166" elapsed="0.122982"/>
</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-08-10T02:09:51.883090" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:51.878272" elapsed="0.004953"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:51.884429" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:51.883721" elapsed="0.000773"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:51.883280" elapsed="0.001296"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:51.878236" elapsed="0.006388"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:51.884702" elapsed="0.000063"/>
</return>
<msg time="2026-08-10T02:09:51.885038" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:51.754648" elapsed="0.130449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:51.886111" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:51.885560" elapsed="0.000655"/>
</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-08-10T02:09:51.888361" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:51.887693" elapsed="0.000743">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:51.886911" elapsed="0.001599">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:51.886869" elapsed="0.001675">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:51.888802" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:51.888612" elapsed="0.000248"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:51.888596" elapsed="0.000288"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:51.886801" elapsed="0.002128">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:51.886324" elapsed="0.002664">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:51.705749" elapsed="0.183340">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:52.909243" elapsed="0.002021"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:52.907106" elapsed="0.004214"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:52.907080" elapsed="0.004287"/>
</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-08-10T02:09:52.913513" elapsed="0.002213"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:52.911426" elapsed="0.004340"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:52.911410" elapsed="0.004381"/>
</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-08-10T02:09:52.917988" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:52.915846" elapsed="0.002199"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:52.915829" elapsed="0.002240"/>
</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-08-10T02:09:52.920210" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:52.918123" elapsed="0.002147"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:52.918108" elapsed="0.002186"/>
</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-08-10T02:09:52.906904" elapsed="0.013456"/>
</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-08-10T02:09:52.922861" elapsed="0.000134"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:52.920789" elapsed="0.002239"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:52.920772" elapsed="0.002280"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:52.925167" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:52.923106" elapsed="0.002113"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:52.923090" elapsed="0.002151"/>
</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-08-10T02:09:52.920601" elapsed="0.004687"/>
</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-08-10T02:09:52.928037" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:52.940988" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:52.941089" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:52.927900" elapsed="0.013217"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:52.925799" elapsed="0.015357"/>
</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-08-10T02:09:52.941420" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:52.941182" elapsed="0.000296"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:52.925782" elapsed="0.015717"/>
</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-08-10T02:09:52.945643" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:52.941557" elapsed="0.004217"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:52.946966" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:52.946221" elapsed="0.000809"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:52.945826" elapsed="0.001284"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:52.941540" elapsed="0.005617"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:52.947238" elapsed="0.000075"/>
</return>
<msg time="2026-08-10T02:09:52.947650" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:52.925594" elapsed="0.022119"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:52.948730" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8537  bytes 56540078 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6299  bytes 1428804 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:52.948140" elapsed="0.000719"/>
</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-08-10T02:09:52.953650" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:53.048067" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:53.048280" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:52.953521" elapsed="0.094858"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:52.950017" elapsed="0.098452"/>
</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-08-10T02:09:53.049039" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:53.048602" elapsed="0.000563"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:52.949978" elapsed="0.099232"/>
</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-08-10T02:09:53.054070" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:53.049363" elapsed="0.004836"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:53.055374" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:53.054686" elapsed="0.000754"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:53.054250" elapsed="0.001271"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:53.049298" elapsed="0.006270"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:53.055697" elapsed="0.000064"/>
</return>
<msg time="2026-08-10T02:09:53.056032" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:52.949517" elapsed="0.106582"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:53.056766" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:53.056425" elapsed="0.000405"/>
</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-08-10T02:09:53.058158" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:53.057638" elapsed="0.000624">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:53.057253" elapsed="0.001137">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:53.057233" elapsed="0.001204">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:53.058795" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:53.058530" elapsed="0.000341"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:53.058509" elapsed="0.000394"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:53.057189" elapsed="0.001774">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:53.056900" elapsed="0.002146">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:52.902049" elapsed="0.157140">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:54.079777" elapsed="0.002057"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:54.077653" elapsed="0.004234"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.077626" elapsed="0.004290"/>
</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-08-10T02:09:54.084039" elapsed="0.002332"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:54.081972" elapsed="0.004448"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.081956" elapsed="0.004489"/>
</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-08-10T02:09:54.088575" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:54.086500" elapsed="0.002132"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.086483" elapsed="0.002172"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:54.090763" elapsed="0.000102"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:54.088709" elapsed="0.002196"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.088693" elapsed="0.002236"/>
</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-08-10T02:09:54.077445" elapsed="0.013535"/>
</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-08-10T02:09:54.093709" elapsed="0.000135"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:54.091428" elapsed="0.002449"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.091410" elapsed="0.002492"/>
</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-08-10T02:09:54.096021" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:54.093956" elapsed="0.002116"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.093940" elapsed="0.002156"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:54.091220" 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-08-10T02:09:54.098906" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:54.112323" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:54.112579" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:54.098769" elapsed="0.013871"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:54.096694" elapsed="0.016031"/>
</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-08-10T02:09:54.113228" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:54.112785" elapsed="0.000606"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.096677" elapsed="0.016762"/>
</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-08-10T02:09:54.117869" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:54.113567" elapsed="0.004384"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:54.118723" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:54.118233" elapsed="0.000531"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:54.117984" elapsed="0.000830"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.113531" elapsed="0.005313"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:54.118897" elapsed="0.000054"/>
</return>
<msg time="2026-08-10T02:09:54.119124" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:54.096487" elapsed="0.022677"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:54.119803" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8558  bytes 56542184 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6320  bytes 1438926 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:54.119457" elapsed="0.000424"/>
</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-08-10T02:09:54.123716" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:54.234560" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:54.234788" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:54.123539" elapsed="0.111307"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:54.120635" elapsed="0.114301"/>
</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-08-10T02:09:54.235483" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:54.234994" elapsed="0.000618"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.120611" elapsed="0.115047"/>
</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-08-10T02:09:54.240643" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:54.235783" elapsed="0.004995"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:54.241940" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:54.241236" elapsed="0.000766"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:54.240831" elapsed="0.001251"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:54.235748" elapsed="0.006381"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:54.242204" elapsed="0.000065"/>
</return>
<msg time="2026-08-10T02:09:54.242577" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:54.120297" elapsed="0.122339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:54.243633" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:54.243054" elapsed="0.000683"/>
</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-08-10T02:09:54.245638" level="FAIL">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:54.245126" elapsed="0.000594">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-08-10T02:09:54.244537" elapsed="0.001259">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-08-10T02:09:54.244505" elapsed="0.001323">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:54.246088" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:54.245896" elapsed="0.000247"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:09:54.245880" elapsed="0.000285"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-08-10T02:09:54.244429" elapsed="0.001780">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:54.243849" elapsed="0.002423">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:54.071843" elapsed="0.174561">'93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
        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-08-10T02:09:55.266534" elapsed="0.002059"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.264350" elapsed="0.004302"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.264304" elapsed="0.004381"/>
</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-08-10T02:09:55.270847" elapsed="0.002257"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.268760" elapsed="0.004386"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.268726" 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-08-10T02:09:55.275323" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.273224" elapsed="0.002175"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.273208" elapsed="0.002215"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:55.277574" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.275476" elapsed="0.002159"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.275461" elapsed="0.002197"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:55.264127" 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-08-10T02:09:55.280300" elapsed="0.000150"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.278224" elapsed="0.002261"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.278206" elapsed="0.002303"/>
</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-08-10T02:09:55.282668" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.280562" elapsed="0.002158"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.280546" elapsed="0.002197"/>
</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-08-10T02:09:55.278032" elapsed="0.004758"/>
</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-08-10T02:09:55.285578" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:55.299198" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:55.299369" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:55.285431" elapsed="0.013980"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.283292" elapsed="0.016173"/>
</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-08-10T02:09:55.299795" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.299501" elapsed="0.000375"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.283275" elapsed="0.016630"/>
</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-08-10T02:09:55.304816" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.299986" elapsed="0.004970"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.306191" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:55.305469" elapsed="0.000788"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.305010" elapsed="0.001370"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.299963" elapsed="0.006477"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:55.306526" elapsed="0.000078"/>
</return>
<msg time="2026-08-10T02:09:55.306884" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:55.283085" elapsed="0.023861"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.307994" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8573  bytes 56543670 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6334  bytes 1442178 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:55.307428" elapsed="0.000694"/>
</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-08-10T02:09:55.311857" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:09:55.432777" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:55.439542" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:55.311729" elapsed="0.127874"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.309462" elapsed="0.130232"/>
</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-08-10T02:09:55.440221" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.439753" elapsed="0.000610"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.309411" elapsed="0.130988"/>
</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-08-10T02:09:55.443454" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.440484" elapsed="0.003051"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.444240" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:55.443818" elapsed="0.000542"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.443568" elapsed="0.000848"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.440461" elapsed="0.003984"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:55.444496" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:09:55.444738" level="INFO">${output} = 93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:55.308883" elapsed="0.135900"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.445494" level="INFO">93878b8c-0f60-4819-ae57-8725af10b1ec
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.209"
            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-08-10T02:09:55.445113" elapsed="0.000446"/>
</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-08-10T02:09:55.446275" elapsed="0.000359"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.446016" elapsed="0.000657"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.445998" elapsed="0.000699"/>
</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-08-10T02:09:55.447008" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.446750" elapsed="0.000315"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.446734" elapsed="0.000353"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="PASS" start="2026-08-10T02:09:55.445955" elapsed="0.001155"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:09:55.445634" elapsed="0.001506"/>
</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-08-10T02:09:55.260057" elapsed="0.187139"/>
</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-08-10T02:09:50.576642" elapsed="4.870612"/>
</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-08-10T02:09:55.449797" elapsed="0.000119"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.447711" elapsed="0.002238"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.447695" elapsed="0.002278"/>
</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-08-10T02:09:55.452075" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.450026" elapsed="0.002101"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.450010" elapsed="0.002140"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:55.447522" elapsed="0.004679"/>
</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-08-10T02:09:50.245383" elapsed="5.206873"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:55.452821" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ec07a8d0&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-08-10T02:09:55.452468" elapsed="0.000555"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:47.083477" elapsed="8.369616"/>
</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-08-10T02:09:55.454978" 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-08-10T02:09:55.454503" elapsed="0.000502"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.455631" 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-08-10T02:09:55.455211" elapsed="0.000446"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-08-10T02:09:55.456272" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-08-10T02:09:55.456141" elapsed="0.000157"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.456357" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:09:55.456510" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777ec9d2b90&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-08-10T02:09:55.455837" elapsed="0.000698"/>
</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-08-10T02:09:55.461614" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.461262" elapsed="0.000420"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.462181" 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-08-10T02:09:55.461889" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.461706" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.461243" elapsed="0.001022"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.469039" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7ab0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.466784" elapsed="0.002283"/>
</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-08-10T02:09:55.469684" 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-08-10T02:09:55.469275" elapsed="0.000767"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.470603" 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-08-10T02:09:55.470237" 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-08-10T02:09:55.470820" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.471032" 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 0x7777ec9d2b90&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:55.466379" elapsed="0.004774"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.502456" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6c50&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.500230" elapsed="0.002254"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.502681" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.503653" 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-08-10T02:09:55.503319" 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-08-10T02:09:55.503870" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.506439" 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-08-10T02:09:55.504222" elapsed="0.002266"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.506532" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.499744" elapsed="0.006911"/>
</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-08-10T02:09:55.506857" elapsed="0.000182"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.507089" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:09:55.460961" elapsed="0.046245"/>
</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-08-10T02:09:55.512211" 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-08-10T02:09:55.511991" elapsed="0.000246"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.511702" elapsed="0.000578"/>
</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-08-10T02:09:55.512504" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.512305" elapsed="0.000255"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.511684" elapsed="0.000897"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.519461" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6cf0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.517258" elapsed="0.002232"/>
</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-08-10T02:09:55.520073" elapsed="0.000309"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:55.519695" elapsed="0.000780"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.521089" 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-08-10T02:09:55.520698" elapsed="0.000425"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:55.521379" elapsed="0.000176"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.521606" 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 0x7777ec9d2b90&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:55.516829" elapsed="0.004899"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.553276" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7060&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.551050" elapsed="0.002254"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.553517" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.554487" 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-08-10T02:09:55.554149" 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-08-10T02:09:55.554704" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.557246" 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-08-10T02:09:55.555054" elapsed="0.002240"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.557356" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.550551" elapsed="0.006931"/>
</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-08-10T02:09:55.557679" elapsed="0.000181"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.557909" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:09:55.511408" elapsed="0.046617"/>
</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-08-10T02:09:55.563032" 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-08-10T02:09:55.562818" elapsed="0.000240"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:55.562528" elapsed="0.000571"/>
</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-08-10T02:09:55.563304" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:55.563123" elapsed="0.000253"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:55.562511" elapsed="0.000886"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.570254" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7ba0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.568004" elapsed="0.002280"/>
</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-08-10T02:09:55.570897" 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-08-10T02:09:55.570507" elapsed="0.000740"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.571773" 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-08-10T02:09:55.571455" 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-08-10T02:09:55.571987" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.572201" 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 0x7777ec9d2b90&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:55.567502" elapsed="0.004821"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.604017" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7970&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.601824" elapsed="0.002221"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.604237" elapsed="0.000448"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.605254" 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-08-10T02:09:55.604886" elapsed="0.000398"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:55.605495" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.608013" 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-08-10T02:09:55.605845" elapsed="0.002216"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.608105" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.601324" elapsed="0.006904"/>
</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-08-10T02:09:55.608443" elapsed="0.000185"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.608677" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:09:55.562219" elapsed="0.046575"/>
</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-08-10T02:09:55.615835" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6070&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.613672" elapsed="0.002191"/>
</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-08-10T02:09:55.616465" elapsed="0.000332"/>
</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-08-10T02:09:55.616062" elapsed="0.000790"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.617407" 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-08-10T02:09:55.617066" 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-08-10T02:09:55.617624" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.617832" 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 0x7777ec9d2b90&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:55.613281" elapsed="0.004671"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.617999" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:55.609028" elapsed="0.009084"/>
</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-08-10T02:09:55.627677" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7330&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.625373" elapsed="0.002331"/>
</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-08-10T02:09:55.628282" 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-08-10T02:09:55.627903" elapsed="0.000748"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.629192" 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-08-10T02:09:55.628841" 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-08-10T02:09:55.629427" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.629678" 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 0x7777ec9d2b90&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:55.624975" elapsed="0.004826"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.663192" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6c00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.660999" elapsed="0.002221"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.663430" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.664401" 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-08-10T02:09:55.664061" 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-08-10T02:09:55.664618" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.667137" 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-08-10T02:09:55.664979" elapsed="0.002207"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.667229" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.658779" elapsed="0.008593"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.698815" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec039990&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.696609" elapsed="0.002233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.699033" elapsed="0.000452"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.700010" 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-08-10T02:09:55.699685" 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-08-10T02:09:55.700227" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.702792" 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-08-10T02:09:55.700591" elapsed="0.002252"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.702886" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.696125" elapsed="0.006884"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.736285" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03bf60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.734097" elapsed="0.002217"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.736523" elapsed="0.000438"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.737551" 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-08-10T02:09:55.737196" 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-08-10T02:09:55.737770" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.740445" 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-08-10T02:09:55.738119" elapsed="0.002425"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.740589" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.731870" elapsed="0.008846"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.776838" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6bb0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.774639" elapsed="0.002227"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.777073" elapsed="0.000477"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.778086" 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-08-10T02:09:55.777752" elapsed="0.000365"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:55.778307" elapsed="0.000179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.780838" 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-08-10T02:09:55.778673" elapsed="0.002215"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.780931" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.772418" elapsed="0.008664"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.812662" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03b830&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.810454" 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-08-10T02:09:55.812883" elapsed="0.000508"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.813934" 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-08-10T02:09:55.813595" 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-08-10T02:09:55.814158" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.816688" 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-08-10T02:09:55.814524" elapsed="0.002215"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.816783" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.809972" elapsed="0.006933"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.848553" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03afc0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.846325" elapsed="0.002256"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.848773" elapsed="0.000486"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.849822" 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-08-10T02:09:55.849480" 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-08-10T02:09:55.850089" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.853995" 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-08-10T02:09:55.850458" elapsed="0.003590"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.854092" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.845838" elapsed="0.008379"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.854271" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-08-10T02:09:55.618758" elapsed="0.235647"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.892023" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03b240&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.889755" 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-08-10T02:09:55.892255" elapsed="0.000489"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.893362" 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-08-10T02:09:55.892948" elapsed="0.000447"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:55.893590" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.896115" 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-08-10T02:09:55.893948" elapsed="0.002219"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.896213" elapsed="0.000034"/>
</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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.889167" elapsed="0.007196"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.896420" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-08-10T02:09:55.618291" elapsed="0.278247"/>
</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-08-10T02:09:55.908915" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6bb0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.906173" elapsed="0.002779"/>
</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-08-10T02:09:55.909706" elapsed="0.000326"/>
</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-08-10T02:09:55.909276" elapsed="0.000811"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.910653" 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-08-10T02:09:55.910280" 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-08-10T02:09:55.910873" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.911085" 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 0x7777ec9d2b90&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:55.905738" elapsed="0.005473"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.911329" elapsed="0.000046"/>
</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 0x7777ec9d2b90&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:55.901233" elapsed="0.010237"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.944828" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff32480&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.942602" elapsed="0.002254"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.945052" elapsed="0.000490"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.946093" 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-08-10T02:09:55.945746" 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-08-10T02:09:55.946314" elapsed="0.000179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.948856" 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-08-10T02:09:55.946683" elapsed="0.002226"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.948953" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.940369" elapsed="0.008776"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:55.949701" 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-08-10T02:09:55.949440" elapsed="0.000293"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:55.983442" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff32160&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:55.981176" elapsed="0.002296"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:55.983674" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:55.984714" 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-08-10T02:09:55.984350" 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-08-10T02:09:55.984934" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:55.987532" 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-08-10T02:09:55.985324" elapsed="0.002263"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:55.987632" elapsed="0.000036"/>
</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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:55.978907" elapsed="0.008861"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.019980" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b5ad0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.017544" elapsed="0.002470"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:56.020219" elapsed="0.000585"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.021581" 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-08-10T02:09:56.021061" elapsed="0.000552"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:56.021905" elapsed="0.000169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.024658" 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-08-10T02:09:56.022274" elapsed="0.002439"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.024762" elapsed="0.000039"/>
</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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.016874" elapsed="0.008029"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:56.025359" 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-08-10T02:09:56.025111" elapsed="0.000276"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.063111" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b71f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.060861" elapsed="0.002279"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:56.063350" elapsed="0.000445"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.064377" 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-08-10T02:09:56.063999" 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-08-10T02:09:56.064602" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.067230" 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-08-10T02:09:56.064952" elapsed="0.002336"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.067349" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.058646" elapsed="0.008835"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.098820" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff32ed0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.096561" elapsed="0.002288"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:56.099041" elapsed="0.000472"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.100073" 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-08-10T02:09:56.099714" 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-08-10T02:09:56.100293" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.102881" 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-08-10T02:09:56.100664" elapsed="0.002272"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.103019" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${src}</arg>
<arg>match/ethernet-match/ethernet-source</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.096077" elapsed="0.007069"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:56.103558" 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-08-10T02:09:56.103369" elapsed="0.000215"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.137018" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b41d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.134796" 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-08-10T02:09:56.137272" elapsed="0.000464"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.138305" 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-08-10T02:09:56.137940" 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-08-10T02:09:56.138542" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.141247" 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-08-10T02:09:56.138892" elapsed="0.002412"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.141370" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.132548" elapsed="0.008948"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.176294" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff31710&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.173707" elapsed="0.002621"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:56.176588" elapsed="0.000555"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.177918" 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-08-10T02:09:56.177453" elapsed="0.000504"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:56.178200" elapsed="0.000216"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.180988" 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-08-10T02:09:56.178660" elapsed="0.002387"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.181093" 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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.173187" elapsed="0.008067"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.181316" elapsed="0.000043"/>
</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-08-10T02:09:55.900761" elapsed="0.280780"/>
</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-08-10T02:09:56.193046" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6980&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.190809" elapsed="0.002265"/>
</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-08-10T02:09:56.193740" 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-08-10T02:09:56.193322" elapsed="0.000796"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.194697" 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-08-10T02:09:56.194311" 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-08-10T02:09:56.194918" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.195131" 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 0x7777ec9d2b90&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:56.190394" elapsed="0.004859"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.195300" 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 0x7777ec9d2b90&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:56.186074" elapsed="0.009363"/>
</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-08-10T02:09:56.202804" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6c00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.200570" elapsed="0.002262"/>
</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-08-10T02:09:56.203436" 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-08-10T02:09:56.203037" elapsed="0.000779"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.204394" 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-08-10T02:09:56.204008" 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-08-10T02:09:56.204616" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.204828" 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 0x7777ec9d2b90&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:56.200135" elapsed="0.004814"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.204998" 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 0x7777ec9d2b90&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:56.195655" elapsed="0.009458"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:56.205565" 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-08-10T02:09:56.205369" elapsed="0.000222"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.237118" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6e80&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.234870" 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-08-10T02:09:56.237383" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.238398" 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-08-10T02:09:56.238016" 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-08-10T02:09:56.238617" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.241156" 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-08-10T02:09:56.238970" elapsed="0.002312"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.241327" elapsed="0.000047"/>
</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 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.234403" elapsed="0.007068"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:56.241862" 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-08-10T02:09:56.241676" elapsed="0.000212"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.276185" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec038e50&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.271132" elapsed="0.005083"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:56.276433" elapsed="0.000495"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.277574" 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-08-10T02:09:56.277140" 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-08-10T02:09:56.277797" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.280491" 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-08-10T02:09:56.278149" elapsed="0.002400"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.280593" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777ec9d2b90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.270670" elapsed="0.010048"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.280772" 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-08-10T02:09:56.185626" elapsed="0.095260"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.283245" 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-08-10T02:09:56.281074" elapsed="0.002227"/>
</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-08-10T02:09:56.283508" elapsed="0.002274"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.288004" 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-08-10T02:09:56.285976" elapsed="0.002074"/>
</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-08-10T02:09:56.291137" elapsed="0.002023"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.289007" elapsed="0.004190"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.288986" elapsed="0.004237"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-08-10T02:09:56.295405" elapsed="0.002245"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.293305" elapsed="0.004428"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.293287" elapsed="0.004475"/>
</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-08-10T02:09:56.299927" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.297820" elapsed="0.002163"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.297803" elapsed="0.002204"/>
</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-08-10T02:09:56.302189" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.300062" elapsed="0.002185"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.300046" elapsed="0.002225"/>
</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-08-10T02:09:56.288766" elapsed="0.013553"/>
</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-08-10T02:09:56.304909" elapsed="0.000132"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.302819" elapsed="0.002254"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.302801" elapsed="0.002297"/>
</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-08-10T02:09:56.307254" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.305150" elapsed="0.002156"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.305134" elapsed="0.002212"/>
</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-08-10T02:09:56.302583" elapsed="0.004813"/>
</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-08-10T02:09:56.311914" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-08-10T02:09:56.326198" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:56.326361" level="INFO">${output} = 52:8d:1e:48:e6:49</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:56.311781" elapsed="0.014618"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.309684" elapsed="0.016771"/>
</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-08-10T02:09:56.326757" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.326491" elapsed="0.000345"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.309666" elapsed="0.017200"/>
</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-08-10T02:09:56.331631" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.326945" elapsed="0.004817"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.332993" level="INFO">${output} = 52:8d:1e:48:e6:49</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-08-10T02:09:56.332301" elapsed="0.000750"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.331815" elapsed="0.001315"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.326922" elapsed="0.006255"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:56.333252" elapsed="0.000151"/>
</return>
<msg time="2026-08-10T02:09:56.333744" level="INFO">${switch.datapath_id_output_string} = 52:8d:1e:48:e6:49</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-08-10T02:09:56.307681" elapsed="0.026120"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.338646" level="INFO">52:8d:1e:48:e6:49</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:56.334226" elapsed="0.004466"/>
</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-08-10T02:09:56.338888" elapsed="0.000277"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-08-10T02:09:56.339212" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:56.341358" level="INFO">${dpid_id} = 90766051960393</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-08-10T02:09:56.288264" elapsed="0.053122"/>
</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-08-10T02:09:56.364404" level="INFO">PUT Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=161 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:09:56.364622" level="INFO">PUT Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=161 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node01jznrhz988o7yomw675aosw3311.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:09:56 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:56.364871" 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-08-10T02:09:56.348364" elapsed="0.016566"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.370523" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:56.365456" elapsed="0.005164"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:56.377571" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:56.377854" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:09:56.377975" 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-08-10T02:09:56.370988" elapsed="0.007013"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.380586" 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-08-10T02:09:56.378203" elapsed="0.002440"/>
</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-08-10T02:09:56.380839" elapsed="0.002272"/>
</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-08-10T02:09:56.342129" elapsed="0.041048"/>
</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-08-10T02:09:56.341598" elapsed="0.041633"/>
</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-08-10T02:09:56.400320" elapsed="0.002689"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.398063" elapsed="0.004999"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.398044" elapsed="0.005054"/>
</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-08-10T02:09:56.406015" elapsed="0.002923"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.403170" elapsed="0.005821"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.403148" elapsed="0.005876"/>
</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-08-10T02:09:56.411908" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.409096" elapsed="0.002886"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.409074" elapsed="0.002941"/>
</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-08-10T02:09:56.414722" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.412087" elapsed="0.002697"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.412066" elapsed="0.002742"/>
</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-08-10T02:09:56.397826" elapsed="0.017033"/>
</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-08-10T02:09:56.417593" elapsed="0.000131"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.415427" elapsed="0.002332"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.415409" elapsed="0.002376"/>
</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-08-10T02:09:56.419924" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.417839" elapsed="0.002138"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.417823" elapsed="0.002178"/>
</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-08-10T02:09:56.415161" elapsed="0.004888"/>
</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-08-10T02:09:56.426317" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:56.439961" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:56.440177" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:56.426145" elapsed="0.014095"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.420623" elapsed="0.019761"/>
</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-08-10T02:09:56.440902" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.440449" elapsed="0.000581"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.420605" elapsed="0.020472"/>
</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-08-10T02:09:56.446139" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.441206" elapsed="0.005066"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.447522" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:56.446770" elapsed="0.000817"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.446326" elapsed="0.001341"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.441169" elapsed="0.006546"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:56.447795" elapsed="0.000070"/>
</return>
<msg time="2026-08-10T02:09:56.448136" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:56.420363" elapsed="0.027835"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.449204" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8590  bytes 56545752 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6356  bytes 1446414 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:56.448659" elapsed="0.000671"/>
</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-08-10T02:09:56.454899" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:09:56.501286" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:56.501558" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.418s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.130s, 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-08-10T02:09:56.454770" elapsed="0.046847"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.450657" elapsed="0.051044"/>
</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-08-10T02:09:56.502176" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.501758" elapsed="0.000545"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.450617" elapsed="0.051767"/>
</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-08-10T02:09:56.507230" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.502512" elapsed="0.004880"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.508546" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.418s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.130s, 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-08-10T02:09:56.507846" elapsed="0.000852"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.507447" elapsed="0.001336"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.502477" elapsed="0.006354"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:56.508910" elapsed="0.000067"/>
</return>
<msg time="2026-08-10T02:09:56.509254" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.418s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.130s, 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-08-10T02:09:56.450011" elapsed="0.059301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.510277" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.418s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.130s, 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-08-10T02:09:56.509853" elapsed="0.000470"/>
</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-08-10T02:09:56.510936" elapsed="0.000562"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.510672" elapsed="0.000867"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.510658" elapsed="0.000906"/>
</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-08-10T02:09:56.511877" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.511617" elapsed="0.000317"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.511601" elapsed="0.000355"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=IN_PORT</var>
<status status="PASS" start="2026-08-10T02:09:56.510625" 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-08-10T02:09:56.512441" elapsed="0.000362"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.512168" elapsed="0.000674"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.512154" elapsed="0.000712"/>
</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-08-10T02:09:56.513168" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.512918" elapsed="0.000306"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.512902" elapsed="0.000345"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:09:56.512125" elapsed="0.001144"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:09:56.510403" elapsed="0.002894"/>
</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-08-10T02:09:56.392936" elapsed="0.120447"/>
</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-08-10T02:09:56.383462" elapsed="0.129981"/>
</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-08-10T02:09:56.526460" level="INFO">DELETE Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=161 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:56.526508" level="INFO">DELETE Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=161 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:56.526619" 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-08-10T02:09:56.518810" elapsed="0.007836"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.529053" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:56.526847" elapsed="0.002248"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:56.534154" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:56.534441" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:09:56.534585" 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-08-10T02:09:56.529256" elapsed="0.005369"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-08-10T02:09:56.540575" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:09:56.534783" elapsed="0.005877"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.534755" elapsed="0.005939"/>
</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-08-10T02:09:56.540912" 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-08-10T02:09:56.541150" elapsed="0.000027"/>
</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-08-10T02:09:56.514248" elapsed="0.027010"/>
</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-08-10T02:09:56.513659" elapsed="0.027693"/>
</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-08-10T02:09:56.556908" elapsed="0.002043"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.554839" elapsed="0.004153"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.554820" elapsed="0.004197"/>
</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-08-10T02:09:56.561139" elapsed="0.002256"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.559071" elapsed="0.004364"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.559055" elapsed="0.004404"/>
</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-08-10T02:09:56.565605" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.563513" elapsed="0.002147"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.563497" elapsed="0.002186"/>
</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-08-10T02:09:56.567806" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.565736" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.565721" elapsed="0.002165"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:56.554602" elapsed="0.013331"/>
</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-08-10T02:09:56.570527" elapsed="0.000130"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.568425" elapsed="0.002266"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.568407" elapsed="0.002308"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:56.572831" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.570768" elapsed="0.002115"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.570752" elapsed="0.002154"/>
</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-08-10T02:09:56.568169" elapsed="0.004782"/>
</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-08-10T02:09:56.575941" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:56.589823" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:56.589920" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:56.575807" elapsed="0.014140"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.573526" elapsed="0.016459"/>
</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-08-10T02:09:56.590276" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.590011" elapsed="0.000441"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.573508" elapsed="0.016991"/>
</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-08-10T02:09:56.595384" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.590624" elapsed="0.004892"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.596672" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:56.595969" elapsed="0.000769"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.595569" elapsed="0.001248"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.590588" elapsed="0.006276"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:56.596940" elapsed="0.000066"/>
</return>
<msg time="2026-08-10T02:09:56.597274" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:56.573232" elapsed="0.024269"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.598314" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8601  bytes 56547150 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6371  bytes 1449836 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:56.597941" elapsed="0.000448"/>
</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-08-10T02:09:56.601153" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:09:56.659421" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:56.659631" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.567s, 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-08-10T02:09:56.601027" elapsed="0.058662"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.598938" elapsed="0.060835"/>
</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-08-10T02:09:56.660246" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.659832" elapsed="0.000577"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.598920" elapsed="0.061537"/>
</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-08-10T02:09:56.665304" elapsed="0.000081"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.660583" elapsed="0.004907"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.666642" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.567s, 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-08-10T02:09:56.665955" elapsed="0.000748"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.665545" elapsed="0.001238"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.660546" elapsed="0.006284"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:56.666905" elapsed="0.000061"/>
</return>
<msg time="2026-08-10T02:09:56.667231" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.567s, 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-08-10T02:09:56.598668" elapsed="0.068620"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.668294" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.567s, 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-08-10T02:09:56.667749" elapsed="0.000681"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:56.669761" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.669075" elapsed="0.000825"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.669043" elapsed="0.000908"/>
</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-08-10T02:09:56.670399" elapsed="0.000328"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.670068" elapsed="0.000698"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.670035" elapsed="0.000754"/>
</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-08-10T02:09:56.668976" elapsed="0.001836"/>
</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-08-10T02:09:56.671249" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.670997" elapsed="0.000311"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.670983" elapsed="0.000347"/>
</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-08-10T02:09:56.671646" elapsed="0.000312"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.671401" elapsed="0.000596"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.671386" elapsed="0.000634"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:09:56.670955" elapsed="0.001087"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:09:56.668543" elapsed="0.003527"/>
</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-08-10T02:09:56.550237" elapsed="0.121885"/>
</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-08-10T02:09:56.541682" elapsed="0.130538"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>161</arg>
<arg>1</arg>
<status status="PASS" start="2026-08-10T02:09:55.454053" elapsed="1.218235"/>
</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-08-10T02:09:55.453200" elapsed="1.219238"/>
</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-08-10T02:09:56.677905" 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-08-10T02:09:56.677372" elapsed="0.000561"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.678564" 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-08-10T02:09:56.678138" elapsed="0.000452"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-08-10T02:09:56.679207" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777ecb5a650&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-08-10T02:09:56.679082" elapsed="0.000152"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.679277" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:56.679453" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777ecb5a650&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-08-10T02:09:56.678773" elapsed="0.000706"/>
</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-08-10T02:09:56.684511" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.684195" elapsed="0.000381"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.685069" 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-08-10T02:09:56.684778" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.684599" elapsed="0.000531"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.684174" elapsed="0.000978"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.691908" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04c7c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.689691" 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-08-10T02:09:56.692547" elapsed="0.000302"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:56.692142" elapsed="0.000761"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.693453" 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-08-10T02:09:56.693095" elapsed="0.000398"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:56.693683" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.693894" 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 0x7777ecb5a650&gt;
object. The &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:56.689238" elapsed="0.004776"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.725349" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04d940&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.723157" elapsed="0.002222"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:56.725584" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.726556" 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-08-10T02:09:56.726224" 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-08-10T02:09:56.726774" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.729290" 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-08-10T02:09:56.727124" elapsed="0.002228"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.729397" 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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.722672" elapsed="0.006875"/>
</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-08-10T02:09:56.729791" elapsed="0.000199"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.730040" 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-08-10T02:09:56.683879" elapsed="0.046280"/>
</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-08-10T02:09:56.735137" 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-08-10T02:09:56.734918" elapsed="0.000245"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.734630" elapsed="0.000580"/>
</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-08-10T02:09:56.735431" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.735234" elapsed="0.000252"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.734613" elapsed="0.000894"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.742360" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04ffb0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.740140" elapsed="0.002250"/>
</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-08-10T02:09:56.742969" 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-08-10T02:09:56.742592" elapsed="0.000724"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.743836" 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-08-10T02:09:56.743524" elapsed="0.000340"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:56.744050" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.744261" 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 0x7777ecb5a650&gt;
object. The &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:56.739737" elapsed="0.004661"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.775767" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04f330&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.773544" 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-08-10T02:09:56.775994" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.776968" 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-08-10T02:09:56.776643" elapsed="0.000354"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:56.777185" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.779780" 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-08-10T02:09:56.777604" elapsed="0.002225"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.779875" elapsed="0.000033"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.773005" elapsed="0.007001"/>
</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-08-10T02:09:56.780201" elapsed="0.000198"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.780449" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:09:56.734327" elapsed="0.046240"/>
</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-08-10T02:09:56.785620" 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-08-10T02:09:56.785366" elapsed="0.000280"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:56.785057" elapsed="0.000679"/>
</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-08-10T02:09:56.785951" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:56.785763" elapsed="0.000242"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:56.785039" elapsed="0.000987"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.792664" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04cb30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.790504" elapsed="0.002188"/>
</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-08-10T02:09:56.793280" elapsed="0.003313"/>
</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-08-10T02:09:56.792895" elapsed="0.003761"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.797195" 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-08-10T02:09:56.796863" 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-08-10T02:09:56.797427" elapsed="0.000181"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.797658" 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 0x7777ecb5a650&gt;
object. The &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:56.790093" elapsed="0.007686"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.830274" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec039530&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.828088" elapsed="0.002214"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:56.830510" elapsed="0.000426"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.831473" 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-08-10T02:09:56.831135" 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-08-10T02:09:56.831692" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.834231" 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-08-10T02:09:56.832038" elapsed="0.002242"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.834323" 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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.827604" elapsed="0.006861"/>
</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-08-10T02:09:56.834662" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.834893" 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-08-10T02:09:56.784755" elapsed="0.050254"/>
</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-08-10T02:09:56.842036" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e6d40&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.839827" elapsed="0.002237"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.842667" elapsed="0.000305"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:56.842266" elapsed="0.000761"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.843553" 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-08-10T02:09:56.843216" 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-08-10T02:09:56.843771" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.844025" 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 0x7777ecb5a650&gt;
object. The &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:56.839449" elapsed="0.004702"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.844198" elapsed="0.000024"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:56.835220" elapsed="0.009091"/>
</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-08-10T02:09:56.853875" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff331f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.851550" elapsed="0.002353"/>
</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-08-10T02:09:56.854502" 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-08-10T02:09:56.854104" elapsed="0.000749"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.855384" 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-08-10T02:09:56.855045" 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-08-10T02:09:56.855602" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.855812" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777ecb5a650&gt;
object. The &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:56.851157" elapsed="0.004775"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.889127" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec368040&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.886949" elapsed="0.002206"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:56.889365" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.890365" 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-08-10T02:09:56.890026" 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-08-10T02:09:56.890582" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.893084" 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-08-10T02:09:56.890928" elapsed="0.002204"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.893175" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<arg>${EMPTY}</arg>
<arg>instructions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.884757" elapsed="0.008540"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.928017" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03b240&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.925830" elapsed="0.002215"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:56.928236" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.929229" 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-08-10T02:09:56.928887" 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-08-10T02:09:56.929465" elapsed="0.000186"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.932015" 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-08-10T02:09:56.929839" elapsed="0.002226"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.932109" 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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.925282" elapsed="0.007022"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:56.967156" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03bd80&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:56.964750" 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-08-10T02:09:56.967412" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:56.968442" 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-08-10T02:09:56.968064" 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-08-10T02:09:56.968665" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:56.971482" 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-08-10T02:09:56.969019" elapsed="0.002515"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:56.971583" elapsed="0.000039"/>
</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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:56.962412" elapsed="0.009315"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.005081" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6a70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.002865" elapsed="0.002244"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:57.005300" elapsed="0.000494"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.006348" 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-08-10T02:09:57.005996" 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-08-10T02:09:57.006570" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.009079" 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-08-10T02:09:57.006915" elapsed="0.002214"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.009172" 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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.000638" elapsed="0.008656"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.043456" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7d30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.041188" elapsed="0.002296"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:57.043674" elapsed="0.000438"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.044667" 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-08-10T02:09:57.044311" 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-08-10T02:09:57.044885" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.047530" 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-08-10T02:09:57.045311" elapsed="0.002271"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.047634" elapsed="0.000037"/>
</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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.040686" elapsed="0.007082"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.079390" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7a60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.077160" 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-08-10T02:09:57.079612" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.080604" 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-08-10T02:09:57.080246" 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-08-10T02:09:57.080824" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.083540" 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-08-10T02:09:57.081173" elapsed="0.002421"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.083637" elapsed="0.000028"/>
</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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.076670" elapsed="0.007091"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.083819" elapsed="0.000024"/>
</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-08-10T02:09:56.844958" elapsed="0.238975"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.115497" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff31440&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.113241" 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-08-10T02:09:57.115716" elapsed="0.000445"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.116722" 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-08-10T02:09:57.116377" 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-08-10T02:09:57.116941" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.119482" 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-08-10T02:09:57.117290" elapsed="0.002243"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.119576" elapsed="0.000028"/>
</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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.112774" elapsed="0.006925"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.119754" elapsed="0.000024"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-08-10T02:09:56.844511" elapsed="0.275399"/>
</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-08-10T02:09:57.131411" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03b470&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.129137" 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-08-10T02:09:57.132044" elapsed="0.000322"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:57.131652" elapsed="0.000769"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.132948" 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-08-10T02:09:57.132610" 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-08-10T02:09:57.133165" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.133392" 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 0x7777ecb5a650&gt;
object. The &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:57.128729" elapsed="0.004785"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.133562" elapsed="0.000024"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:57.124493" elapsed="0.009182"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.168167" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7600&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.165951" elapsed="0.002244"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:57.168405" elapsed="0.000427"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.169392" 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-08-10T02:09:57.169032" 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-08-10T02:09:57.169611" elapsed="0.000190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.172181" 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-08-10T02:09:57.169990" elapsed="0.002247"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.172283" elapsed="0.000031"/>
</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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.163597" elapsed="0.008833"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:57.172838" 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-08-10T02:09:57.172646" elapsed="0.000218"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.206176" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b50d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.203953" elapsed="0.002251"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:57.206420" elapsed="0.000443"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.207435" 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-08-10T02:09:57.207064" 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-08-10T02:09:57.207656" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.210188" 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-08-10T02:09:57.208003" elapsed="0.002311"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.210375" 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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.201749" elapsed="0.008753"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.241912" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7510&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.239674" elapsed="0.002267"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:57.242135" elapsed="0.000460"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.243179" 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-08-10T02:09:57.242798" 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-08-10T02:09:57.243418" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.246081" 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-08-10T02:09:57.243767" elapsed="0.002369"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.246180" elapsed="0.000028"/>
</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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.239182" elapsed="0.007119"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:57.246712" 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-08-10T02:09:57.246529" elapsed="0.000209"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.280375" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec039490&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.278149" 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-08-10T02:09:57.280598" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.281609" 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-08-10T02:09:57.281234" elapsed="0.000406"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:57.281917" elapsed="0.000167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.284460" 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-08-10T02:09:57.282274" elapsed="0.002242"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.284560" elapsed="0.000028"/>
</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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.275931" elapsed="0.008752"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.316129" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec038a90&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.313922" elapsed="0.002235"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:57.316365" elapsed="0.000438"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.317378" 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-08-10T02:09:57.317003" elapsed="0.000406"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:57.317599" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.320134" 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-08-10T02:09:57.317978" elapsed="0.002212"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.320233" elapsed="0.000028"/>
</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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.313430" elapsed="0.006942"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:57.320761" 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-08-10T02:09:57.320578" elapsed="0.000209"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.353970" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04df30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.351733" elapsed="0.002266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:57.354191" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.355205" 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-08-10T02:09:57.354847" 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-08-10T02:09:57.355442" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.358102" 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-08-10T02:09:57.355792" elapsed="0.002369"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.358206" 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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.349501" elapsed="0.008843"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.390084" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04c4a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.387829" 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-08-10T02:09:57.390305" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.391349" 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-08-10T02:09:57.390962" 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-08-10T02:09:57.391609" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.394153" 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-08-10T02:09:57.391957" elapsed="0.002255"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.394255" 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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.387351" elapsed="0.007046"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.394453" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-08-10T02:09:57.124042" elapsed="0.270526"/>
</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-08-10T02:09:57.405975" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03a9d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.403739" elapsed="0.002265"/>
</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-08-10T02:09:57.406617" elapsed="0.000305"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:57.406212" elapsed="0.000764"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.407545" 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-08-10T02:09:57.407165" 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-08-10T02:09:57.407765" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.407973" 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 0x7777ecb5a650&gt;
object. The &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:57.403315" elapsed="0.004777"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.408138" elapsed="0.000024"/>
</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 0x7777ecb5a650&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:57.399078" elapsed="0.009172"/>
</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-08-10T02:09:57.415565" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b71f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.413324" elapsed="0.002269"/>
</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-08-10T02:09:57.416173" elapsed="0.000322"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:57.415796" elapsed="0.000753"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.417099" 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-08-10T02:09:57.416738" 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-08-10T02:09:57.417317" elapsed="0.000178"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.417544" 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 0x7777ecb5a650&gt;
object. The &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:57.412915" elapsed="0.004749"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.417711" 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 0x7777ecb5a650&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:57.408481" elapsed="0.009418"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:57.418283" 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-08-10T02:09:57.418094" elapsed="0.000215"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.449585" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04ef20&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.447366" 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-08-10T02:09:57.449808" elapsed="0.000463"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.450861" 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-08-10T02:09:57.450491" 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-08-10T02:09:57.451081" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.453608" 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-08-10T02:09:57.451453" elapsed="0.002211"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.453707" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-source</arg>
<arg>${src}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.446880" elapsed="0.006950"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:57.454229" 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-08-10T02:09:57.454045" elapsed="0.000209"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.485693" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04fc40&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.483440" 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-08-10T02:09:57.485929" elapsed="0.000448"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.486948" 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-08-10T02:09:57.486577" 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-08-10T02:09:57.487165" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.489851" 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-08-10T02:09:57.487533" elapsed="0.002406"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.489984" elapsed="0.000028"/>
</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 0x7777ecb5a650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.482958" elapsed="0.007150"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.490161" 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-08-10T02:09:57.398653" elapsed="0.091621"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.492690" 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-08-10T02:09:57.490531" elapsed="0.002217"/>
</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-08-10T02:09:57.492939" elapsed="0.002284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.497570" 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-08-10T02:09:57.495436" elapsed="0.002180"/>
</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-08-10T02:09:57.500741" elapsed="0.002013"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.498643" elapsed="0.004148"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.498621" elapsed="0.004198"/>
</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-08-10T02:09:57.504942" elapsed="0.002228"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.502874" elapsed="0.004336"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.502858" elapsed="0.004376"/>
</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-08-10T02:09:57.509374" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.507288" elapsed="0.002142"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.507272" elapsed="0.002181"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:57.511590" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.509506" elapsed="0.002143"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.509491" elapsed="0.002181"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:57.498388" elapsed="0.013330"/>
</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-08-10T02:09:57.514287" elapsed="0.000149"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.512186" elapsed="0.002283"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.512168" elapsed="0.002325"/>
</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-08-10T02:09:57.516624" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.514546" elapsed="0.002129"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.514530" elapsed="0.002168"/>
</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-08-10T02:09:57.511953" elapsed="0.004791"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:09:57.521204" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-08-10T02:09:57.534848" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:57.535057" level="INFO">${output} = 52:8d:1e:48:e6:49</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:57.521074" elapsed="0.014038"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.518993" elapsed="0.016203"/>
</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-08-10T02:09:57.535719" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.535253" elapsed="0.000595"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.518976" elapsed="0.016918"/>
</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-08-10T02:09:57.539825" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.536018" elapsed="0.003888"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.540626" level="INFO">${output} = 52:8d:1e:48:e6:49</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-08-10T02:09:57.540189" elapsed="0.000474"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.539938" elapsed="0.000774"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.535983" elapsed="0.004758"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:57.540834" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:57.541086" level="INFO">${switch.datapath_id_output_string} = 52:8d:1e:48:e6:49</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-08-10T02:09:57.517025" elapsed="0.024096"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.544328" level="INFO">52:8d:1e:48:e6:49</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:57.541408" elapsed="0.003008"/>
</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-08-10T02:09:57.544682" elapsed="0.000386"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-08-10T02:09:57.545135" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:57.547600" level="INFO">${dpid_id} = 90766051960393</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-08-10T02:09:57.497843" elapsed="0.049784"/>
</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-08-10T02:09:57.565120" level="INFO">PUT Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=261 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.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-08-10T02:09:57.565193" level="INFO">PUT Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=261 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:57.565428" 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-08-10T02:09:57.554615" elapsed="0.010875"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.570969" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:57.565969" elapsed="0.005095"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:57.578238" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=261?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:57.578527" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:09:57.578646" 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-08-10T02:09:57.571458" elapsed="0.007214"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.581228" 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-08-10T02:09:57.578873" elapsed="0.002413"/>
</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-08-10T02:09:57.581528" elapsed="0.003005"/>
</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-08-10T02:09:57.548394" elapsed="0.036231"/>
</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-08-10T02:09:57.547841" elapsed="0.036859"/>
</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-08-10T02:09:57.600479" elapsed="0.002019"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.598393" elapsed="0.004144"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.598373" elapsed="0.004190"/>
</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-08-10T02:09:57.604686" elapsed="0.002212"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.602616" elapsed="0.004322"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.602600" elapsed="0.004363"/>
</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-08-10T02:09:57.609088" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.607016" elapsed="0.002127"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.607000" elapsed="0.002166"/>
</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-08-10T02:09:57.611305" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.609219" elapsed="0.002159"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.609203" elapsed="0.002199"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:57.598138" elapsed="0.013311"/>
</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-08-10T02:09:57.614026" elapsed="0.000121"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.611917" elapsed="0.002263"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.611900" elapsed="0.002304"/>
</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-08-10T02:09:57.616321" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.614256" elapsed="0.002133"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.614241" elapsed="0.002171"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:57.611683" elapsed="0.004775"/>
</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-08-10T02:09:57.619444" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:57.632450" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:57.632657" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:57.619295" elapsed="0.013424"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.616988" elapsed="0.015814"/>
</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-08-10T02:09:57.633291" elapsed="0.000083"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.632861" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.616971" elapsed="0.016532"/>
</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-08-10T02:09:57.638327" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.633631" elapsed="0.004800"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.639133" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:57.638715" elapsed="0.000460"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.638464" elapsed="0.000760"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.633594" elapsed="0.005660"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:57.639303" elapsed="0.000066"/>
</return>
<msg time="2026-08-10T02:09:57.639543" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:57.616736" elapsed="0.022846"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.640179" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8634  bytes 56550710 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6406  bytes 1461266 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:57.639843" elapsed="0.000470"/>
</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-08-10T02:09:57.644228" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:09:57.693946" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:57.694177" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.609s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:57.644052" elapsed="0.050183"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.641116" elapsed="0.053202"/>
</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-08-10T02:09:57.694838" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.694418" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.641091" elapsed="0.053916"/>
</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-08-10T02:09:57.699355" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.695129" elapsed="0.004310"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.700126" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.609s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-08-10T02:09:57.699722" elapsed="0.000442"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.699472" elapsed="0.000743"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.695094" elapsed="0.005154"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:57.700296" elapsed="0.000059"/>
</return>
<msg time="2026-08-10T02:09:57.700528" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.609s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:57.640732" elapsed="0.059832"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.701164" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.609s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, 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-08-10T02:09:57.700827" elapsed="0.000401"/>
</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-08-10T02:09:57.702065" elapsed="0.000749"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.701689" elapsed="0.001181"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.701668" elapsed="0.001235"/>
</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-08-10T02:09:57.703363" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.702977" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.702956" elapsed="0.000520"/>
</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-08-10T02:09:57.701624" elapsed="0.001884"/>
</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-08-10T02:09:57.704114" elapsed="0.000469"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.703765" elapsed="0.000872"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.703746" elapsed="0.000925"/>
</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-08-10T02:09:57.705094" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.704744" elapsed="0.000428"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.704723" elapsed="0.000480"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:09:57.703707" elapsed="0.001528"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:09:57.701317" elapsed="0.003956"/>
</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-08-10T02:09:57.593811" elapsed="0.111560"/>
</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-08-10T02:09:57.584999" elapsed="0.120448"/>
</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-08-10T02:09:57.717377" level="INFO">DELETE Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=261 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:57.717443" level="INFO">DELETE Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=261 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:57.717638" 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-08-10T02:09:57.710832" elapsed="0.006843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.721245" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:57.717952" elapsed="0.003353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:57.726856" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=261?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:57.727083" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:09:57.727223" 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-08-10T02:09:57.721552" elapsed="0.005708"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-08-10T02:09:57.733163" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:09:57.727399" elapsed="0.005848"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.727371" elapsed="0.005909"/>
</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-08-10T02:09:57.733519" 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-08-10T02:09:57.733756" 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-08-10T02:09:57.706537" elapsed="0.027326"/>
</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-08-10T02:09:57.705742" elapsed="0.028191"/>
</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-08-10T02:09:57.749302" elapsed="0.002026"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.747228" elapsed="0.004154"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.747210" elapsed="0.004197"/>
</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-08-10T02:09:57.753550" elapsed="0.002211"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.751461" elapsed="0.004340"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.751445" elapsed="0.004381"/>
</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-08-10T02:09:57.757960" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.755880" elapsed="0.002148"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.755864" elapsed="0.002188"/>
</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-08-10T02:09:57.760180" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.758106" elapsed="0.002131"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.758091" elapsed="0.002170"/>
</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-08-10T02:09:57.746997" elapsed="0.013311"/>
</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-08-10T02:09:57.762895" elapsed="0.000115"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.760790" elapsed="0.002252"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.760772" elapsed="0.002295"/>
</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-08-10T02:09:57.765200" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.763120" elapsed="0.002131"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.763104" elapsed="0.002171"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:57.760553" elapsed="0.004768"/>
</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-08-10T02:09:57.768155" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:57.780791" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:57.780923" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:57.768028" elapsed="0.012976"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.765862" elapsed="0.015198"/>
</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-08-10T02:09:57.781498" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.781095" elapsed="0.000532"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.765845" elapsed="0.015829"/>
</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-08-10T02:09:57.786636" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.781797" elapsed="0.004971"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.787944" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:57.787234" elapsed="0.000775"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.786820" elapsed="0.001269"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.781762" elapsed="0.006374"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:57.788213" elapsed="0.000062"/>
</return>
<msg time="2026-08-10T02:09:57.788581" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:57.765612" elapsed="0.023030"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.789644" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8644  bytes 56552042 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6421  bytes 1464704 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:57.789064" elapsed="0.000706"/>
</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-08-10T02:09:57.794433" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:09:57.841845" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:57.842126" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.754s, 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-08-10T02:09:57.794268" elapsed="0.047927"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.791093" elapsed="0.051202"/>
</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-08-10T02:09:57.842915" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.842406" elapsed="0.000645"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.791054" elapsed="0.052047"/>
</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-08-10T02:09:57.847983" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.843245" elapsed="0.004819"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.848839" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.754s, 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-08-10T02:09:57.848372" elapsed="0.000505"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.848097" elapsed="0.000831"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.843205" elapsed="0.005752"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:57.849007" elapsed="0.000046"/>
</return>
<msg time="2026-08-10T02:09:57.849232" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.754s, 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-08-10T02:09:57.790484" elapsed="0.058784"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.849912" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.754s, 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-08-10T02:09:57.849564" elapsed="0.000413"/>
</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-08-10T02:09:57.850841" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.850478" elapsed="0.000445"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.850457" elapsed="0.000498"/>
</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-08-10T02:09:57.851495" elapsed="0.000459"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.851110" elapsed="0.000900"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.851086" elapsed="0.000956"/>
</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-08-10T02:09:57.850412" elapsed="0.001663"/>
</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-08-10T02:09:57.852727" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.852371" elapsed="0.000436"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.852322" elapsed="0.000517"/>
</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-08-10T02:09:57.853263" elapsed="0.000466"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.852913" elapsed="0.000872"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.852892" elapsed="0.000926"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:09:57.852282" elapsed="0.001568"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:09:57.850086" elapsed="0.003803"/>
</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-08-10T02:09:57.742715" elapsed="0.111248"/>
</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-08-10T02:09:57.734236" elapsed="0.119806"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>261</arg>
<arg>65535</arg>
<status status="PASS" start="2026-08-10T02:09:56.676854" elapsed="1.177326"/>
</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-08-10T02:09:56.672888" elapsed="1.181485"/>
</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-08-10T02:09:57.856542" 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-08-10T02:09:57.856011" elapsed="0.000561"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.857210" 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-08-10T02:09:57.856784" elapsed="0.000454"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-08-10T02:09:57.857878" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777dff47650&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-08-10T02:09:57.857753" elapsed="0.000152"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.857947" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:09:57.858109" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777dff47650&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-08-10T02:09:57.857444" elapsed="0.000691"/>
</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-08-10T02:09:57.863003" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.862705" elapsed="0.000369"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.863612" 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-08-10T02:09:57.863300" elapsed="0.000338"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.863100" elapsed="0.000573"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.862688" elapsed="0.001006"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.870962" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04f830&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.868411" elapsed="0.002580"/>
</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-08-10T02:09:57.871610" 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-08-10T02:09:57.871200" elapsed="0.000768"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.872525" 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-08-10T02:09:57.872162" elapsed="0.000393"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:57.872744" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.872957" 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 0x7777dff47650&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff47650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:57.867985" elapsed="0.005093"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.904651" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04ce00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.902469" elapsed="0.002211"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:57.904873" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.905840" 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-08-10T02:09:57.905524" 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-08-10T02:09:57.906057" elapsed="0.000207"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.908642" 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-08-10T02:09:57.906476" elapsed="0.002213"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.908733" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.901932" elapsed="0.006924"/>
</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-08-10T02:09:57.909052" elapsed="0.000182"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.909283" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:09:57.862407" elapsed="0.047013"/>
</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-08-10T02:09:57.914448" 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-08-10T02:09:57.914210" elapsed="0.000264"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.913906" elapsed="0.000610"/>
</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-08-10T02:09:57.914723" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.914540" elapsed="0.000238"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.913888" elapsed="0.000910"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.921495" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b76f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.919299" elapsed="0.002224"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.922168" 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-08-10T02:09:57.921726" elapsed="0.000841"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.923073" 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-08-10T02:09:57.922759" elapsed="0.000343"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:57.923288" elapsed="0.000305"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.923644" 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 0x7777dff47650&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff47650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:57.918899" elapsed="0.004865"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.955415" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff31760&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.953190" 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-08-10T02:09:57.955636" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.956609" 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-08-10T02:09:57.956271" 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-08-10T02:09:57.956866" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:57.959441" 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-08-10T02:09:57.957215" elapsed="0.002274"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.959532" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:57.952707" elapsed="0.006949"/>
</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-08-10T02:09:57.959853" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.960085" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:09:57.913612" elapsed="0.046590"/>
</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-08-10T02:09:57.965177" 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-08-10T02:09:57.964963" elapsed="0.000241"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:57.964675" elapsed="0.000570"/>
</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-08-10T02:09:57.965469" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:57.965270" elapsed="0.000255"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:57.964656" elapsed="0.000890"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:57.972233" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03b9c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:57.970031" elapsed="0.002230"/>
</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-08-10T02:09:57.972861" 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-08-10T02:09:57.972482" elapsed="0.000725"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:57.973730" 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-08-10T02:09:57.973414" elapsed="0.000344"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:57.973943" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:57.974179" 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 0x7777dff47650&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff47650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:57.969634" elapsed="0.004673"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.005540" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec039cb0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.003355" elapsed="0.002213"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:58.005758" elapsed="0.000455"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.006759" 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-08-10T02:09:58.006434" elapsed="0.000354"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:58.006975" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.009662" 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-08-10T02:09:58.007320" elapsed="0.002392"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.009756" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.002841" elapsed="0.007041"/>
</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-08-10T02:09:58.010121" elapsed="0.000205"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.010394" 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-08-10T02:09:57.964385" elapsed="0.046128"/>
</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-08-10T02:09:58.017524" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec039a80&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.015343" elapsed="0.002210"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.018135" 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-08-10T02:09:58.017755" elapsed="0.000794"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.019057" 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-08-10T02:09:58.018740" elapsed="0.000346"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:58.019273" elapsed="0.000177"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.019499" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777dff47650&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff47650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:58.014948" elapsed="0.004670"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.019664" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7777dff47650&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:58.010728" elapsed="0.009050"/>
</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-08-10T02:09:58.029158" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff329d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.026985" elapsed="0.002201"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.029778" elapsed="0.000291"/>
</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-08-10T02:09:58.029402" elapsed="0.000719"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.030671" 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-08-10T02:09:58.030352" 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-08-10T02:09:58.030885" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.031094" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777dff47650&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff47650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:58.026615" elapsed="0.004598"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.064706" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04f6f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.062524" elapsed="0.002210"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:58.064924" elapsed="0.000445"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.065888" 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-08-10T02:09:58.065566" elapsed="0.000351"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:58.066102" elapsed="0.000212"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.068714" 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-08-10T02:09:58.066533" elapsed="0.002231"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.068808" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.060286" elapsed="0.008648"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.100971" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04eb10&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.098727" 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-08-10T02:09:58.101192" elapsed="0.000461"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.102226" 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-08-10T02:09:58.101857" 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-08-10T02:09:58.102476" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.105033" 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-08-10T02:09:58.102830" elapsed="0.002254"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.105127" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.098235" elapsed="0.007017"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.138768" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04d8f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.136539" 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-08-10T02:09:58.138990" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.139997" 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-08-10T02:09:58.139660" elapsed="0.000367"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:58.140217" elapsed="0.000180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.142813" 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-08-10T02:09:58.140605" elapsed="0.002259"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.142907" elapsed="0.000028"/>
</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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.134299" elapsed="0.008731"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.176825" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff30a40&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.174598" 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-08-10T02:09:58.177052" elapsed="0.000471"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.178063" 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-08-10T02:09:58.177730" 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-08-10T02:09:58.178327" elapsed="0.000184"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.180888" 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-08-10T02:09:58.178706" elapsed="0.002233"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.180983" elapsed="0.000028"/>
</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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.172188" elapsed="0.008959"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.212812" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff31440&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.210617" 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-08-10T02:09:58.213031" elapsed="0.000457"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.214025" 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-08-10T02:09:58.213688" 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-08-10T02:09:58.214271" elapsed="0.000185"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.216803" 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-08-10T02:09:58.214643" elapsed="0.002210"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.216897" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.210101" elapsed="0.006920"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.248469" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03a610&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.246204" elapsed="0.002293"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:58.248687" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.249676" 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-08-10T02:09:58.249319" 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-08-10T02:09:58.249894" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.252448" 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-08-10T02:09:58.250241" elapsed="0.002259"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.252544" elapsed="0.000028"/>
</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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.245718" elapsed="0.006948"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.252720" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-08-10T02:09:58.020421" elapsed="0.232414"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.284584" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04de90&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.282387" 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-08-10T02:09:58.284803" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.285800" 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-08-10T02:09:58.285456" 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-08-10T02:09:58.286059" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.288613" 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-08-10T02:09:58.286455" elapsed="0.002209"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.288708" elapsed="0.000028"/>
</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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.281876" elapsed="0.006954"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.288885" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-08-10T02:09:58.019958" elapsed="0.269041"/>
</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-08-10T02:09:58.300377" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff32390&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.298153" elapsed="0.002253"/>
</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-08-10T02:09:58.300988" elapsed="0.000302"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:58.300610" elapsed="0.000757"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.301894" 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-08-10T02:09:58.301556" 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-08-10T02:09:58.302109" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.302357" 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 0x7777dff47650&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff47650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:58.297748" elapsed="0.004733"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.302527" elapsed="0.000024"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7777dff47650&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:58.293533" elapsed="0.009107"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.335466" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff312b0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.333090" 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-08-10T02:09:58.335689" elapsed="0.000428"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.336684" 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-08-10T02:09:58.336318" 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-08-10T02:09:58.336906" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.339441" 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-08-10T02:09:58.337252" elapsed="0.002243"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.339538" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.330925" elapsed="0.008735"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:58.340095" 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-08-10T02:09:58.339902" elapsed="0.000219"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.373100" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff30360&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.370905" elapsed="0.002223"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:58.373319" elapsed="0.000455"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.374366" 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-08-10T02:09:58.373974" elapsed="0.000425"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:58.374591" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.377091" 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-08-10T02:09:58.374938" elapsed="0.002206"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.377187" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.368715" elapsed="0.008595"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.408431" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04fba0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.406180" elapsed="0.002280"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:58.408651" elapsed="0.000440"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.409665" 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-08-10T02:09:58.409296" 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-08-10T02:09:58.409886" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.412434" 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-08-10T02:09:58.410233" elapsed="0.002255"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.412531" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.405721" elapsed="0.006934"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:58.413040" 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-08-10T02:09:58.412858" elapsed="0.000208"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.446278" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04d710&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.444062" elapsed="0.002245"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:58.446555" elapsed="0.000440"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.447579" 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-08-10T02:09:58.447199" 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-08-10T02:09:58.447842" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.450383" 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-08-10T02:09:58.448192" elapsed="0.002247"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.450484" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.441832" elapsed="0.008779"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.481993" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04c090&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.479787" 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-08-10T02:09:58.482214" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.483251" 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-08-10T02:09:58.482891" 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-08-10T02:09:58.483487" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.485993" 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-08-10T02:09:58.483835" elapsed="0.002213"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.486091" elapsed="0.000028"/>
</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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.479294" elapsed="0.006919"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:58.486652" 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-08-10T02:09:58.486460" elapsed="0.000217"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.519712" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04f510&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.517482" 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-08-10T02:09:58.519932" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.520947" 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-08-10T02:09:58.520589" 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-08-10T02:09:58.521167" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.523855" 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-08-10T02:09:58.521539" elapsed="0.002406"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.523991" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.515277" elapsed="0.008837"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.555545" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec038270&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.553309" elapsed="0.002265"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:58.555766" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.556782" 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-08-10T02:09:58.556420" elapsed="0.000393"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:58.557000" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.559551" 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-08-10T02:09:58.557362" elapsed="0.002245"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.559650" 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 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.552842" elapsed="0.006930"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.559826" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-08-10T02:09:58.293082" elapsed="0.266857"/>
</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-08-10T02:09:58.571311" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04ee30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.569095" elapsed="0.002260"/>
</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-08-10T02:09:58.572007" 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-08-10T02:09:58.571564" elapsed="0.000824"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.572938" 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-08-10T02:09:58.572578" 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-08-10T02:09:58.573154" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.573379" 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 0x7777dff47650&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff47650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:58.568681" elapsed="0.004820"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.573548" elapsed="0.000024"/>
</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 0x7777dff47650&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:58.564445" elapsed="0.009215"/>
</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-08-10T02:09:58.580919" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04ec00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.578715" elapsed="0.002232"/>
</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-08-10T02:09:58.581585" 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-08-10T02:09:58.581184" elapsed="0.000758"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.582542" 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-08-10T02:09:58.582134" 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-08-10T02:09:58.582768" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.582978" 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 0x7777dff47650&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff47650&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:58.578271" elapsed="0.004828"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.583146" 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 0x7777dff47650&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:58.573872" elapsed="0.009387"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:58.583652" 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-08-10T02:09:58.583469" elapsed="0.000208"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.614958" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04f6f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.612702" 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-08-10T02:09:58.615180" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.616191" 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-08-10T02:09:58.615828" elapsed="0.000393"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:58.616429" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.618947" 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-08-10T02:09:58.616777" elapsed="0.002226"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.619047" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-source</arg>
<arg>${src}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.612218" elapsed="0.006951"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:58.619572" 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-08-10T02:09:58.619389" elapsed="0.000209"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:58.650898" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04e980&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:58.648668" 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-08-10T02:09:58.651119" elapsed="0.000448"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:58.652137" 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-08-10T02:09:58.651768" 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-08-10T02:09:58.652373" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.655050" 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-08-10T02:09:58.652723" elapsed="0.002422"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.655189" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dff47650&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:58.648187" elapsed="0.007126"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:58.655385" 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-08-10T02:09:58.564003" elapsed="0.091497"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.657840" 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-08-10T02:09:58.655687" elapsed="0.002209"/>
</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-08-10T02:09:58.658086" elapsed="0.002284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.662620" 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-08-10T02:09:58.660566" elapsed="0.002101"/>
</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-08-10T02:09:58.665730" elapsed="0.002024"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.663625" elapsed="0.004167"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.663604" elapsed="0.004220"/>
</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-08-10T02:09:58.669959" elapsed="0.002235"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.667879" elapsed="0.004355"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.667863" elapsed="0.004395"/>
</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-08-10T02:09:58.674405" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.672312" elapsed="0.002149"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.672296" 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-08-10T02:09:58.676628" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.674550" elapsed="0.002135"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.674535" elapsed="0.002173"/>
</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-08-10T02:09:58.663379" elapsed="0.013376"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-08-10T02:09:58.679422" elapsed="0.000132"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.677301" elapsed="0.002287"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.677283" elapsed="0.002329"/>
</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-08-10T02:09:58.681742" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.679665" elapsed="0.002129"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.679650" elapsed="0.002166"/>
</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-08-10T02:09:58.676988" elapsed="0.004874"/>
</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-08-10T02:09:58.686400" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-08-10T02:09:58.700295" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:58.700541" level="INFO">${output} = 52:8d:1e:48:e6:49</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:58.686220" elapsed="0.014378"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.684132" elapsed="0.016553"/>
</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-08-10T02:09:58.701158" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.700741" elapsed="0.000544"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.684114" elapsed="0.017215"/>
</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-08-10T02:09:58.706245" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.701502" elapsed="0.004910"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.707477" level="INFO">${output} = 52:8d:1e:48:e6:49</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-08-10T02:09:58.706927" elapsed="0.000587"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.706466" elapsed="0.001098"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.701465" elapsed="0.006129"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:58.707642" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:58.707887" level="INFO">${switch.datapath_id_output_string} = 52:8d:1e:48:e6:49</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-08-10T02:09:58.682147" elapsed="0.025775"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.711870" level="INFO">52:8d:1e:48:e6:49</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:58.708188" elapsed="0.003746"/>
</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-08-10T02:09:58.712202" elapsed="0.000416"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-08-10T02:09:58.712685" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:58.715597" level="INFO">${dpid_id} = 90766051960393</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-08-10T02:09:58.662882" elapsed="0.052742"/>
</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-08-10T02:09:58.732935" level="INFO">PUT Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=361 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.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-08-10T02:09:58.733071" level="INFO">PUT Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=361 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:58.733296" 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-08-10T02:09:58.722611" elapsed="0.010783"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.738924" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:58.733845" elapsed="0.005176"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:58.745206" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=361?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:58.745568" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:09:58.745785" 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-08-10T02:09:58.739328" elapsed="0.006495"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.749461" 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-08-10T02:09:58.746105" elapsed="0.003437"/>
</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-08-10T02:09:58.749812" elapsed="0.003165"/>
</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-08-10T02:09:58.716375" elapsed="0.036692"/>
</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-08-10T02:09:58.715833" elapsed="0.037311"/>
</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-08-10T02:09:58.767861" elapsed="0.002011"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.765767" elapsed="0.004143"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.765749" elapsed="0.004185"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-08-10T02:09:58.772088" elapsed="0.002192"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.769989" elapsed="0.004331"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.769973" elapsed="0.004388"/>
</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-08-10T02:09:58.776511" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.774418" elapsed="0.002149"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.774402" elapsed="0.002188"/>
</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-08-10T02:09:58.778747" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.776644" elapsed="0.002162"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.776629" elapsed="0.002200"/>
</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-08-10T02:09:58.765533" elapsed="0.013351"/>
</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-08-10T02:09:58.781433" elapsed="0.000116"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.779367" elapsed="0.002216"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.779348" elapsed="0.002259"/>
</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-08-10T02:09:58.783736" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.781660" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.781645" elapsed="0.002166"/>
</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-08-10T02:09:58.779116" elapsed="0.004741"/>
</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-08-10T02:09:58.786835" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:58.799639" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:58.799846" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:58.786705" elapsed="0.013203"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.784405" elapsed="0.015590"/>
</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-08-10T02:09:58.800527" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.800053" elapsed="0.000602"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.784387" elapsed="0.016314"/>
</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-08-10T02:09:58.804714" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.800827" elapsed="0.003969"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.805590" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:58.805149" elapsed="0.000482"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.804883" elapsed="0.000798"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.800791" elapsed="0.004921"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:58.805761" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:09:58.805967" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:58.784138" elapsed="0.021868"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.806652" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8662  bytes 56554230 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6445  bytes 1468984 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:58.806273" elapsed="0.000462"/>
</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-08-10T02:09:58.810681" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:09:58.857239" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:58.857488" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.775s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.119s, 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-08-10T02:09:58.810461" elapsed="0.047087"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.807531" elapsed="0.050108"/>
</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-08-10T02:09:58.858114" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.857696" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.807506" elapsed="0.050778"/>
</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-08-10T02:09:58.863237" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.858445" elapsed="0.004874"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.864033" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.775s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.119s, 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-08-10T02:09:58.863627" elapsed="0.000445"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.863375" elapsed="0.000747"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.858408" elapsed="0.005743"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:58.864198" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:09:58.864429" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.775s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.119s, 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-08-10T02:09:58.807127" elapsed="0.057339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.865072" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.775s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.119s, 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-08-10T02:09:58.864732" elapsed="0.000403"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-08-10T02:09:58.865941" elapsed="0.000754"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.865583" elapsed="0.001169"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.865562" elapsed="0.001224"/>
</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-08-10T02:09:58.867228" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.866861" elapsed="0.000446"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.866839" elapsed="0.000529"/>
</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-08-10T02:09:58.865518" elapsed="0.001884"/>
</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-08-10T02:09:58.868064" elapsed="0.000472"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.867664" elapsed="0.000928"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.867644" elapsed="0.000982"/>
</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-08-10T02:09:58.869055" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.868702" elapsed="0.000431"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.868679" elapsed="0.000486"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:09:58.867605" elapsed="0.001592"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:09:58.865211" elapsed="0.004030"/>
</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-08-10T02:09:58.761205" elapsed="0.108112"/>
</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-08-10T02:09:58.753466" elapsed="0.115950"/>
</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-08-10T02:09:58.882373" level="INFO">DELETE Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=361 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:58.882437" level="INFO">DELETE Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=361 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:58.882575" 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-08-10T02:09:58.875026" elapsed="0.007619"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.886210" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:58.882926" elapsed="0.003344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:58.891630" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=361?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:58.891838" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:09:58.891978" 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-08-10T02:09:58.886517" elapsed="0.005499"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-08-10T02:09:58.897902" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:09:58.892124" elapsed="0.005861"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.892099" elapsed="0.005919"/>
</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-08-10T02:09:58.898235" 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-08-10T02:09:58.898492" 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-08-10T02:09:58.870478" elapsed="0.028155"/>
</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-08-10T02:09:58.869707" elapsed="0.028999"/>
</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-08-10T02:09:58.914078" elapsed="0.002019"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.912003" elapsed="0.004131"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.911985" elapsed="0.004173"/>
</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-08-10T02:09:58.918282" elapsed="0.002211"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.916212" elapsed="0.004321"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.916196" elapsed="0.004361"/>
</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-08-10T02:09:58.922684" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.920612" elapsed="0.002164"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.920595" elapsed="0.002206"/>
</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-08-10T02:09:58.924930" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.922857" elapsed="0.002132"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.922841" elapsed="0.002171"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:09:58.911769" elapsed="0.013291"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-08-10T02:09:58.927632" elapsed="0.000115"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.925545" elapsed="0.002234"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.925528" elapsed="0.002275"/>
</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-08-10T02:09:58.929925" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.927856" elapsed="0.002120"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.927840" elapsed="0.002159"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:09:58.925292" elapsed="0.004754"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:09:58.932874" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:58.945668" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:58.945798" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:58.932746" elapsed="0.013092"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.930590" elapsed="0.015301"/>
</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-08-10T02:09:58.946188" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.945926" elapsed="0.000366"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.930573" elapsed="0.015810"/>
</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-08-10T02:09:58.951260" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:58.946514" elapsed="0.004912"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.952573" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:58.951879" elapsed="0.000759"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.951479" elapsed="0.001239"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.946478" elapsed="0.006285"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:58.952839" elapsed="0.000062"/>
</return>
<msg time="2026-08-10T02:09:58.953166" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:58.930320" elapsed="0.022908"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:58.954230" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8673  bytes 56555628 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6460  bytes 1472406 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:09:58.953687" elapsed="0.000705"/>
</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-08-10T02:09:58.957850" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:09:59.005667" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:59.005882" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.924s, 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-08-10T02:09:58.957722" elapsed="0.048218"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:58.955454" elapsed="0.050572"/>
</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-08-10T02:09:59.006555" elapsed="0.000140"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.006082" elapsed="0.000699"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:58.955436" elapsed="0.051393"/>
</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-08-10T02:09:59.011778" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.006956" elapsed="0.004952"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.013067" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.924s, 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-08-10T02:09:59.012402" elapsed="0.000726"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.011961" elapsed="0.001247"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.006919" elapsed="0.006336"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:59.013330" elapsed="0.000098"/>
</return>
<msg time="2026-08-10T02:09:59.013701" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.924s, 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-08-10T02:09:58.955063" elapsed="0.058695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.014815" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.924s, 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-08-10T02:09:59.014175" elapsed="0.000741"/>
</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-08-10T02:09:59.015827" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.015472" elapsed="0.000435"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.015452" elapsed="0.000486"/>
</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-08-10T02:09:59.016380" elapsed="0.000447"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.016010" elapsed="0.000871"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.015990" elapsed="0.000924"/>
</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-08-10T02:09:59.015410" elapsed="0.001536"/>
</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-08-10T02:09:59.017582" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.017205" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.017186" elapsed="0.000508"/>
</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-08-10T02:09:59.018109" elapsed="0.000465"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.017767" elapsed="0.000861"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.017746" elapsed="0.000929"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:09:59.017146" elapsed="0.001563"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:09:59.015028" elapsed="0.003719"/>
</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-08-10T02:09:58.907479" elapsed="0.111340"/>
</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-08-10T02:09:58.898997" elapsed="0.119899"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>361</arg>
<arg>9</arg>
<status status="PASS" start="2026-08-10T02:09:57.855536" elapsed="1.163449"/>
</kw>
<doc>OF1.3 OFPP_NORMAL = 0xfffffffa, /* Process with normal L2/L3 switching. */</doc>
<tag>normal</tag>
<status status="PASS" start="2026-08-10T02:09:57.854840" elapsed="1.164308"/>
</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-08-10T02:09:59.021778" 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-08-10T02:09:59.021104" elapsed="0.000712"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.022718" 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-08-10T02:09:59.022103" elapsed="0.000654"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-08-10T02:09:59.023517" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777dfead510&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-08-10T02:09:59.023393" elapsed="0.000151"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.023587" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:09:59.023733" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777dfead510&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-08-10T02:09:59.023007" elapsed="0.000751"/>
</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-08-10T02:09:59.032623" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.032309" elapsed="0.000379"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.033186" 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-08-10T02:09:59.032890" elapsed="0.000323"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.032711" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.032291" elapsed="0.000981"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.040142" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a3790&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.037917" elapsed="0.002253"/>
</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-08-10T02:09:59.040779" elapsed="0.000298"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:59.040394" elapsed="0.000738"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.041677" 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-08-10T02:09:59.041350" 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-08-10T02:09:59.041895" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.042104" 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 0x7777dfead510&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfead510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:59.037512" elapsed="0.004712"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.073616" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a3880&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.071449" elapsed="0.002195"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.073834" elapsed="0.000426"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.074840" 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-08-10T02:09:59.074488" 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-08-10T02:09:59.075058" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.077602" 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-08-10T02:09:59.075424" elapsed="0.002225"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.077693" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.070947" elapsed="0.006866"/>
</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-08-10T02:09:59.078009" elapsed="0.000181"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.078239" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:09:59.031971" elapsed="0.046404"/>
</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-08-10T02:09:59.083370" 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-08-10T02:09:59.083135" elapsed="0.000262"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.082849" elapsed="0.000590"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:59.083644" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.083462" elapsed="0.000236"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.082831" elapsed="0.000888"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.090362" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a1c10&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.088177" elapsed="0.002214"/>
</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-08-10T02:09:59.091043" 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-08-10T02:09:59.090593" elapsed="0.000821"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.091915" 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-08-10T02:09:59.091606" elapsed="0.000338"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:59.092132" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.092358" 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 0x7777dfead510&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfead510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:59.087781" elapsed="0.004700"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.124061" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a24d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.121839" 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-08-10T02:09:59.124282" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.125250" 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-08-10T02:09:59.124933" 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-08-10T02:09:59.125491" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.128031" 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-08-10T02:09:59.125839" elapsed="0.002241"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.128123" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.121347" elapsed="0.006898"/>
</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-08-10T02:09:59.128464" elapsed="0.000184"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.128697" 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-08-10T02:09:59.082547" elapsed="0.046266"/>
</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-08-10T02:09:59.133785" 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-08-10T02:09:59.133571" elapsed="0.000240"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.133269" elapsed="0.000583"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:59.134059" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.133876" elapsed="0.000236"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.133251" elapsed="0.000882"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.140796" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a3560&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.138592" elapsed="0.002232"/>
</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-08-10T02:09:59.141420" 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-08-10T02:09:59.141026" elapsed="0.000743"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.142269" 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-08-10T02:09:59.141958" elapsed="0.000340"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:59.142502" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.142711" elapsed="0.000057"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777dfead510&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfead510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:59.138179" elapsed="0.004731"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.176826" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a0090&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.174640" elapsed="0.002214"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.177047" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.178015" 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-08-10T02:09:59.177696" 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-08-10T02:09:59.178235" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.180927" 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-08-10T02:09:59.178603" elapsed="0.002374"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.181020" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.174142" elapsed="0.007001"/>
</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-08-10T02:09:59.181356" elapsed="0.000184"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.181590" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:09:59.132979" elapsed="0.048727"/>
</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-08-10T02:09:59.188718" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04d850&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.186516" elapsed="0.002230"/>
</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-08-10T02:09:59.189324" 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-08-10T02:09:59.188947" elapsed="0.000754"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.190205" 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-08-10T02:09:59.189891" elapsed="0.000343"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:59.190438" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.190646" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777dfead510&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfead510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:59.186127" elapsed="0.004656"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.190830" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7777dfead510&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:59.181916" elapsed="0.009031"/>
</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-08-10T02:09:59.200305" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04e520&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.198127" elapsed="0.002221"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.200928" 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-08-10T02:09:59.200551" elapsed="0.000723"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.201797" 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-08-10T02:09:59.201480" elapsed="0.000346"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:59.202012" elapsed="0.000157"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.202268" 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 0x7777dfead510&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfead510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:59.197756" elapsed="0.004653"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.235966" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a2e30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.233750" elapsed="0.002243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.236185" elapsed="0.000444"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.237150" 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-08-10T02:09:59.236829" elapsed="0.000351"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:59.237386" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.239920" 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-08-10T02:09:59.237743" elapsed="0.002225"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.240011" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.231555" elapsed="0.008579"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.271535" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a3060&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.269297" elapsed="0.002266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.271755" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.272734" 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-08-10T02:09:59.272402" 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-08-10T02:09:59.272952" elapsed="0.000157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.275483" 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-08-10T02:09:59.273296" elapsed="0.002237"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.275575" elapsed="0.000028"/>
</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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.268831" elapsed="0.006865"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.310428" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a1a30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.308233" 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-08-10T02:09:59.310647" elapsed="0.000459"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.311655" 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-08-10T02:09:59.311306" elapsed="0.000379"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:59.311870" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.314387" 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-08-10T02:09:59.312214" elapsed="0.002291"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.314550" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.306042" elapsed="0.008632"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.348314" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec038d60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.346088" elapsed="0.002271"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.348551" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.349531" 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-08-10T02:09:59.349183" 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-08-10T02:09:59.349749" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.352291" 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-08-10T02:09:59.350098" elapsed="0.002259"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.352401" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.343885" elapsed="0.008639"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.384086" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec038720&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.381874" elapsed="0.002240"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.384304" elapsed="0.000452"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.385291" 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-08-10T02:09:59.384955" 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-08-10T02:09:59.385526" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.388069" 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-08-10T02:09:59.385878" elapsed="0.002243"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.388164" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.381405" elapsed="0.006881"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.422628" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff30a40&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.420424" elapsed="0.002232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.422846" elapsed="0.000462"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.423862" 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-08-10T02:09:59.423526" 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-08-10T02:09:59.424144" elapsed="0.000167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.426671" 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-08-10T02:09:59.424516" elapsed="0.002206"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.426765" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.419909" elapsed="0.007007"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.426971" 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-08-10T02:09:59.191590" elapsed="0.235502"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.460351" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a3dd0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.458076" elapsed="0.002306"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.460576" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.461600" 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-08-10T02:09:59.461232" 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-08-10T02:09:59.461821" elapsed="0.000171"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.464419" 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-08-10T02:09:59.462181" elapsed="0.002293"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.464518" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.457583" elapsed="0.007062"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.464700" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-08-10T02:09:59.191126" elapsed="0.273690"/>
</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-08-10T02:09:59.476382" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a0810&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.474117" elapsed="0.002295"/>
</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-08-10T02:09:59.476999" 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-08-10T02:09:59.476617" elapsed="0.000770"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.477925" 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-08-10T02:09:59.477579" 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-08-10T02:09:59.478143" elapsed="0.000168"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.478380" 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 0x7777dfead510&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfead510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:59.473707" elapsed="0.004799"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.478591" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7777dfead510&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:59.469430" elapsed="0.009282"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.511893" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03b470&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.509536" elapsed="0.002386"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.512117" elapsed="0.000444"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.513100" 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-08-10T02:09:59.512760" 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-08-10T02:09:59.513316" elapsed="0.000177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.515853" 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-08-10T02:09:59.513679" elapsed="0.002228"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.515949" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.507366" elapsed="0.008705"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:59.516482" 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-08-10T02:09:59.516275" elapsed="0.000232"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.552476" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03acf0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.550238" elapsed="0.002266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.552694" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.553698" 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-08-10T02:09:59.553346" 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-08-10T02:09:59.553914" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.556478" 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-08-10T02:09:59.554255" elapsed="0.002277"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.556575" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.548052" elapsed="0.008647"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.588121" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04ee30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.585893" elapsed="0.002256"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.588357" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.589363" 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-08-10T02:09:59.588989" elapsed="0.000406"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:09:59.589621" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.592149" 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-08-10T02:09:59.589968" elapsed="0.002235"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.592247" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.585431" elapsed="0.006957"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:59.592774" 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-08-10T02:09:59.592591" elapsed="0.000209"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.626203" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dff31440&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.624008" 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-08-10T02:09:59.626441" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.627477" 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-08-10T02:09:59.627098" 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-08-10T02:09:59.627694" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.630197" 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-08-10T02:09:59.628037" elapsed="0.002213"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.630293" elapsed="0.000028"/>
</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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.621802" elapsed="0.008631"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.661941" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a0770&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.659735" 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-08-10T02:09:59.662160" elapsed="0.000457"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.663196" 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-08-10T02:09:59.662815" 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-08-10T02:09:59.663433" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.665934" 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-08-10T02:09:59.663779" elapsed="0.002210"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.666068" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.659256" elapsed="0.006938"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:59.666598" 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-08-10T02:09:59.666415" elapsed="0.000208"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.710780" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a0040&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.708569" elapsed="0.002239"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.710999" elapsed="0.000471"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.712026" 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-08-10T02:09:59.711670" 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-08-10T02:09:59.712243" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.715899" 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-08-10T02:09:59.712608" elapsed="0.003347"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.715999" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-destination</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.706351" elapsed="0.009773"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.747776" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec035620&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.745506" elapsed="0.002298"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.747994" elapsed="0.000460"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.749019" 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-08-10T02:09:59.748655" 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-08-10T02:09:59.749240" elapsed="0.000183"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.751774" 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-08-10T02:09:59.749611" elapsed="0.002220"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.751875" elapsed="0.000028"/>
</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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.744925" elapsed="0.007073"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.752052" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-08-10T02:09:59.468959" elapsed="0.283256"/>
</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-08-10T02:09:59.763719" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04fba0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.761485" elapsed="0.002261"/>
</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-08-10T02:09:59.764351" elapsed="0.000305"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:59.763949" elapsed="0.000761"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.765258" 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-08-10T02:09:59.764900" 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-08-10T02:09:59.765493" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.765703" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777dfead510&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfead510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:59.761026" elapsed="0.004795"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.765868" elapsed="0.000024"/>
</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 0x7777dfead510&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:59.756770" elapsed="0.009210"/>
</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-08-10T02:09:59.773274" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b73d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.771012" elapsed="0.002290"/>
</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-08-10T02:09:59.773902" elapsed="0.000302"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:09:59.773523" elapsed="0.000735"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.774825" 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-08-10T02:09:59.774465" 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-08-10T02:09:59.775056" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.775266" 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 0x7777dfead510&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfead510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:09:59.770602" elapsed="0.004801"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.775451" 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 0x7777dfead510&gt; object</doc>
<status status="PASS" start="2026-08-10T02:09:59.766194" elapsed="0.009370"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:59.775937" 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-08-10T02:09:59.775755" elapsed="0.000207"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.807281" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a3dd0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.805061" 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-08-10T02:09:59.807518" elapsed="0.000429"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.808531" 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-08-10T02:09:59.808146" 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-08-10T02:09:59.808750" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.811327" 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-08-10T02:09:59.809097" elapsed="0.002341"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.811482" 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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.804601" elapsed="0.007004"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:09:59.811990" 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-08-10T02:09:59.811807" elapsed="0.000208"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:09:59.843407" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a0130&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:09:59.841111" elapsed="0.002324"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:09:59.843626" elapsed="0.000426"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:09:59.844638" 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-08-10T02:09:59.844250" 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-08-10T02:09:59.844856" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.847526" 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-08-10T02:09:59.845199" elapsed="0.002385"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.847628" elapsed="0.000028"/>
</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 0x7777dfead510&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:09:59.840650" elapsed="0.007100"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:09:59.847803" elapsed="0.000024"/>
</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-08-10T02:09:59.756343" elapsed="0.091571"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.850243" 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-08-10T02:09:59.848101" elapsed="0.002199"/>
</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-08-10T02:09:59.850507" elapsed="0.002397"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.855139" 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-08-10T02:09:59.853100" elapsed="0.002085"/>
</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-08-10T02:09:59.858232" elapsed="0.002038"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.856129" elapsed="0.004178"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.856108" elapsed="0.004242"/>
</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-08-10T02:09:59.862483" elapsed="0.002229"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.860408" elapsed="0.004379"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.860392" elapsed="0.004422"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:59.866957" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.864870" elapsed="0.002143"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.864853" elapsed="0.002183"/>
</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-08-10T02:09:59.869193" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.867114" elapsed="0.002137"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.867073" 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-08-10T02:09:59.855893" elapsed="0.013428"/>
</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-08-10T02:09:59.871886" elapsed="0.000129"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.869805" elapsed="0.002243"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.869787" elapsed="0.002285"/>
</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-08-10T02:09:59.874242" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.872126" elapsed="0.002168"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.872110" elapsed="0.002207"/>
</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-08-10T02:09:59.869572" elapsed="0.004808"/>
</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-08-10T02:09:59.878875" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-08-10T02:09:59.892861" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:59.893069" level="INFO">${output} = 52:8d:1e:48:e6:49</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:59.878744" elapsed="0.014379"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.876656" elapsed="0.016551"/>
</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-08-10T02:09:59.893718" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.893264" elapsed="0.000579"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.876638" elapsed="0.017252"/>
</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-08-10T02:09:59.898820" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.894013" elapsed="0.004934"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.900136" level="INFO">${output} = 52:8d:1e:48:e6:49</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-08-10T02:09:59.899480" elapsed="0.000713"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.898999" elapsed="0.001261"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.893979" elapsed="0.006311"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:09:59.900358" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:09:59.900606" level="INFO">${switch.datapath_id_output_string} = 52:8d:1e:48:e6:49</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-08-10T02:09:59.874660" elapsed="0.025981"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.903824" level="INFO">52:8d:1e:48:e6:49</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:59.900902" elapsed="0.002986"/>
</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-08-10T02:09:59.904151" elapsed="0.000408"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-08-10T02:09:59.904626" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:09:59.907615" level="INFO">${dpid_id} = 90766051960393</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-08-10T02:09:59.855417" elapsed="0.052235"/>
</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-08-10T02:09:59.926492" level="INFO">PUT Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=81 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.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-08-10T02:09:59.926696" level="INFO">PUT Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=81 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:59.926921" 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-08-10T02:09:59.914819" elapsed="0.012161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.932627" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:09:59.927490" elapsed="0.005240"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:09:59.940209" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=81?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:09:59.940577" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:09:59.940694" 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-08-10T02:09:59.933111" elapsed="0.007610"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:09:59.943305" 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-08-10T02:09:59.940922" elapsed="0.002459"/>
</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-08-10T02:09:59.943574" elapsed="0.002933"/>
</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-08-10T02:09:59.908575" elapsed="0.038022"/>
</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-08-10T02:09:59.907940" elapsed="0.038734"/>
</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-08-10T02:09:59.962358" elapsed="0.002030"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.960271" elapsed="0.004156"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.960252" elapsed="0.004199"/>
</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-08-10T02:09:59.966585" elapsed="0.002210"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.964505" elapsed="0.004330"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.964489" 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-08-10T02:09:59.970987" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.968913" elapsed="0.002130"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.968897" elapsed="0.002169"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:59.973201" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.971120" elapsed="0.002144"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.971105" 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-08-10T02:09:59.960038" elapsed="0.013312"/>
</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-08-10T02:09:59.975962" elapsed="0.000117"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.973856" elapsed="0.002256"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.973838" elapsed="0.002298"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-08-10T02:09:59.978428" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.976190" elapsed="0.002292"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.976174" elapsed="0.002331"/>
</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-08-10T02:09:59.973582" elapsed="0.004971"/>
</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-08-10T02:09:59.981321" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:09:59.994071" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:09:59.994278" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:09:59.981193" elapsed="0.013186"/>
</kw>
<status status="PASS" start="2026-08-10T02:09:59.979079" elapsed="0.015390"/>
</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-08-10T02:09:59.994943" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.994527" elapsed="0.000541"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.979062" elapsed="0.016051"/>
</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-08-10T02:10:00.000145" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:09:59.995263" elapsed="0.005010"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.001006" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:00.000596" elapsed="0.000451"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.000321" elapsed="0.000776"/>
</branch>
<status status="PASS" start="2026-08-10T02:09:59.995225" elapsed="0.005901"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:00.001174" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:10:00.001410" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:09:59.978829" elapsed="0.022620"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.002049" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8694  bytes 56557942 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6484  bytes 1476686 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:10:00.001712" elapsed="0.000417"/>
</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-08-10T02:10:00.006044" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:10:00.053557" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:00.053735" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.968s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.118s, 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-08-10T02:10:00.005869" elapsed="0.047919"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.002927" elapsed="0.050944"/>
</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-08-10T02:10:00.054292" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.053927" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.002903" elapsed="0.051563"/>
</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-08-10T02:10:00.057650" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.054570" elapsed="0.003163"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.058484" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.968s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.118s, 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-08-10T02:10:00.058017" elapsed="0.000506"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.057766" elapsed="0.000876"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.054541" elapsed="0.004131"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:00.058724" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:10:00.058946" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.968s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.118s, 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-08-10T02:10:00.002549" elapsed="0.056435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.059665" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.968s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.118s, 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-08-10T02:10:00.059286" elapsed="0.000446"/>
</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-08-10T02:10:00.060763" elapsed="0.001166"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.060170" elapsed="0.001849"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.060150" elapsed="0.001923"/>
</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-08-10T02:10:00.062816" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.062193" elapsed="0.000752"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.062158" elapsed="0.000838"/>
</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-08-10T02:10:00.060106" elapsed="0.002941"/>
</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-08-10T02:10:00.064150" elapsed="0.000416"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.063580" elapsed="0.001026"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.063548" elapsed="0.001082"/>
</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-08-10T02:10:00.064932" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.064682" elapsed="0.000306"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.064666" elapsed="0.000345"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:10:00.063480" elapsed="0.001553"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:10:00.059807" elapsed="0.005254"/>
</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-08-10T02:09:59.955779" elapsed="0.109337"/>
</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-08-10T02:09:59.946969" elapsed="0.118202"/>
</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-08-10T02:10:00.077098" level="INFO">DELETE Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=81 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:00.077144" level="INFO">DELETE Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=81 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:00.077254" 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-08-10T02:10:00.070530" elapsed="0.006751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.079744" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:00.077502" elapsed="0.002284"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:00.084372" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=81?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:00.084614" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:10:00.084756" 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-08-10T02:10:00.079949" elapsed="0.004845"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-08-10T02:10:00.090739" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:10:00.084959" elapsed="0.005863"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.084932" elapsed="0.005924"/>
</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-08-10T02:10:00.091071" elapsed="0.000030"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:00.091376" elapsed="0.000032"/>
</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-08-10T02:10:00.065971" elapsed="0.025522"/>
</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-08-10T02:10:00.065401" elapsed="0.026163"/>
</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-08-10T02:10:00.108252" elapsed="0.002017"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.106146" elapsed="0.004161"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.106128" elapsed="0.004218"/>
</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-08-10T02:10:00.112491" elapsed="0.002181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.110402" elapsed="0.004309"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.110386" elapsed="0.004349"/>
</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-08-10T02:10:00.116893" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.114789" elapsed="0.002160"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.114773" elapsed="0.002198"/>
</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-08-10T02:10:00.119095" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.117025" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.117009" elapsed="0.002166"/>
</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-08-10T02:10:00.105912" elapsed="0.013334"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-08-10T02:10:00.121817" elapsed="0.000119"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.119738" elapsed="0.002230"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.119721" elapsed="0.002271"/>
</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-08-10T02:10:00.124134" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.122045" elapsed="0.002141"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.122029" elapsed="0.002180"/>
</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-08-10T02:10:00.119505" elapsed="0.004753"/>
</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-08-10T02:10:00.127189" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:10:00.139938" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:00.140068" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:00.127060" elapsed="0.013047"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.124833" elapsed="0.015327"/>
</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-08-10T02:10:00.140513" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.140195" elapsed="0.000400"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.124816" elapsed="0.015808"/>
</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-08-10T02:10:00.143705" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.140700" elapsed="0.003088"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.144682" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:00.144075" elapsed="0.000672"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.143821" elapsed="0.001007"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.140678" elapsed="0.004196"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:00.144950" elapsed="0.000062"/>
</return>
<msg time="2026-08-10T02:10:00.145277" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:00.124581" elapsed="0.020861"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.146460" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8715  bytes 56560208 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6508  bytes 1487102 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:10:00.145876" elapsed="0.000712"/>
</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-08-10T02:10:00.152580" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:10:00.201285" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:00.201535" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.116s, 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-08-10T02:10:00.152452" elapsed="0.049141"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.147886" elapsed="0.053793"/>
</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-08-10T02:10:00.202155" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.201737" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.147847" elapsed="0.054481"/>
</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-08-10T02:10:00.207256" elapsed="0.004397"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.202491" elapsed="0.009217"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.212457" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.116s, 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-08-10T02:10:00.212011" elapsed="0.000485"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.211742" elapsed="0.000804"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.202453" elapsed="0.010122"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:00.212629" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:10:00.212836" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.116s, 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-08-10T02:10:00.147216" elapsed="0.065655"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.213497" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.116s, 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-08-10T02:10:00.213133" elapsed="0.000426"/>
</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-08-10T02:10:00.214322" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.213954" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.213934" elapsed="0.000525"/>
</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-08-10T02:10:00.214880" elapsed="0.000508"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.214532" elapsed="0.000912"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.214511" elapsed="0.000966"/>
</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-08-10T02:10:00.213893" elapsed="0.001616"/>
</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-08-10T02:10:00.216118" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.215766" elapsed="0.000431"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.215746" elapsed="0.000483"/>
</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-08-10T02:10:00.216561" elapsed="0.000312"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.216296" elapsed="0.000616"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.216280" elapsed="0.000655"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:10:00.215707" elapsed="0.001250"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:10:00.213627" elapsed="0.003357"/>
</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-08-10T02:10:00.101583" elapsed="0.115452"/>
</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-08-10T02:10:00.091856" elapsed="0.125282"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>81</arg>
<arg>255</arg>
<status status="PASS" start="2026-08-10T02:09:59.020521" elapsed="1.196685"/>
</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-08-10T02:09:59.019638" elapsed="1.197709"/>
</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-08-10T02:10:00.219329" 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-08-10T02:10:00.218827" elapsed="0.000548"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.219975" 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-08-10T02:10:00.219579" elapsed="0.000422"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-08-10T02:10:00.220639" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777dfc45110&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-08-10T02:10:00.220506" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.220710" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:00.220858" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777dfc45110&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-08-10T02:10:00.220183" elapsed="0.000700"/>
</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-08-10T02:10:00.225913" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.225615" elapsed="0.000362"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.226492" 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-08-10T02:10:00.226183" elapsed="0.000335"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.226001" elapsed="0.000553"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.225597" elapsed="0.000978"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.233287" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a29d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.231069" 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-08-10T02:10:00.233924" elapsed="0.000299"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:00.233542" elapsed="0.000735"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.234824" 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-08-10T02:10:00.234487" elapsed="0.000365"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.235041" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.235249" elapsed="0.000054"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777dfc45110&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:00.230672" elapsed="0.004742"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.266654" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a3790&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.264481" elapsed="0.002201"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.266874" elapsed="0.000439"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.267843" 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-08-10T02:10:00.267530" elapsed="0.000342"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.268058" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.270582" 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-08-10T02:10:00.268420" elapsed="0.002209"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.270672" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.263987" elapsed="0.006805"/>
</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-08-10T02:10:00.271029" elapsed="0.000185"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.271262" 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-08-10T02:10:00.225280" elapsed="0.046146"/>
</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-08-10T02:10:00.276408" 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-08-10T02:10:00.276171" elapsed="0.000263"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.275882" elapsed="0.000594"/>
</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-08-10T02:10:00.276681" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.276500" elapsed="0.000236"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.275864" elapsed="0.000892"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.283584" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04e3e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.281420" elapsed="0.002192"/>
</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-08-10T02:10:00.284190" 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-08-10T02:10:00.283813" elapsed="0.000742"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.285055" 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-08-10T02:10:00.284745" elapsed="0.000338"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.285271" elapsed="0.000178"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.285498" 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 0x7777dfc45110&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:00.280998" elapsed="0.004619"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.316960" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04d760&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.314782" elapsed="0.002206"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.317177" elapsed="0.000476"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.318166" 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-08-10T02:10:00.317852" elapsed="0.000343"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.318397" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.320929" 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-08-10T02:10:00.318746" elapsed="0.002232"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.321021" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.314288" elapsed="0.006854"/>
</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-08-10T02:10:00.321353" elapsed="0.000184"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.321586" elapsed="0.000025"/>
</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-08-10T02:10:00.275588" elapsed="0.046112"/>
</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-08-10T02:10:00.326655" 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-08-10T02:10:00.326441" elapsed="0.000240"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:00.326139" elapsed="0.000618"/>
</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-08-10T02:10:00.326968" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:00.326783" elapsed="0.000239"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:00.326122" elapsed="0.000921"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.333705" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a0c70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.331545" elapsed="0.002187"/>
</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-08-10T02:10:00.334309" 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-08-10T02:10:00.333933" elapsed="0.000742"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.335176" 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-08-10T02:10:00.334863" elapsed="0.000341"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.335431" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.335647" 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 0x7777dfc45110&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:00.331124" elapsed="0.004642"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.367307" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a1440&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.365136" elapsed="0.002239"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.367570" elapsed="0.000429"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.368540" 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-08-10T02:10:00.368198" 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-08-10T02:10:00.368761" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.371291" 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-08-10T02:10:00.369105" elapsed="0.002260"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.371410" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.364654" elapsed="0.006881"/>
</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-08-10T02:10:00.371731" elapsed="0.000180"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.371959" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:10:00.325855" elapsed="0.046219"/>
</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-08-10T02:10:00.379044" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04fba0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.376875" elapsed="0.002197"/>
</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-08-10T02:10:00.379685" elapsed="0.000302"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:00.379271" elapsed="0.000770"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.380566" 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-08-10T02:10:00.380230" 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-08-10T02:10:00.380781" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.381022" 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 0x7777dfc45110&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:00.376506" elapsed="0.004640"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.381192" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:00.372282" elapsed="0.009021"/>
</kw>
<kw name="Set Flow Output Action" owner="FlowLib">
<kw name="Set Flow Action" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.390883" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04dda0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.388676" elapsed="0.002235"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.391534" 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-08-10T02:10:00.391113" elapsed="0.000769"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.392403" 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-08-10T02:10:00.392069" 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-08-10T02:10:00.392621" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.392829" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777dfc45110&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:00.388279" elapsed="0.004669"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.426307" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04d580&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.424093" 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-08-10T02:10:00.426544" elapsed="0.000425"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.427533" 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-08-10T02:10:00.427169" 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-08-10T02:10:00.427749" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.430263" 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-08-10T02:10:00.428093" elapsed="0.002220"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.430372" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.421877" elapsed="0.008619"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.462034" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04e660&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.459848" elapsed="0.002213"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.462252" elapsed="0.000452"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.463227" 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-08-10T02:10:00.462901" 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-08-10T02:10:00.466525" elapsed="0.000263"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.469215" 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-08-10T02:10:00.466997" elapsed="0.002269"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.469309" elapsed="0.000050"/>
</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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.459369" elapsed="0.010129"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.502804" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a0e00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.500609" elapsed="0.002223"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.503022" elapsed="0.000483"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.504046" 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-08-10T02:10:00.503706" 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-08-10T02:10:00.504266" elapsed="0.000180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.506787" 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-08-10T02:10:00.504632" elapsed="0.002205"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.506879" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.498248" elapsed="0.008754"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.540215" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a3e20&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.538009" 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-08-10T02:10:00.540451" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.541432" 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-08-10T02:10:00.541083" elapsed="0.000379"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.541650" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.544171" 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-08-10T02:10:00.541992" elapsed="0.002229"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.544263" elapsed="0.000028"/>
</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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.535825" elapsed="0.008578"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.575864" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a29d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.573651" elapsed="0.002241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.576081" elapsed="0.000452"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.577067" 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-08-10T02:10:00.576732" elapsed="0.000365"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.577285" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.579863" 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-08-10T02:10:00.577685" elapsed="0.002228"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.579956" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.573171" elapsed="0.006906"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.615546" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03bc90&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.613302" 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-08-10T02:10:00.615765" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.616756" 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-08-10T02:10:00.616416" 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-08-10T02:10:00.616975" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.619573" 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-08-10T02:10:00.617322" elapsed="0.002303"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.619667" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.612785" elapsed="0.007004"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.619842" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-08-10T02:10:00.381946" elapsed="0.238010"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.651291" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a13a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.649096" elapsed="0.002222"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.651539" elapsed="0.000441"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.652546" 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-08-10T02:10:00.652179" 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-08-10T02:10:00.652763" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.655259" 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-08-10T02:10:00.653109" elapsed="0.002202"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.655370" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.648627" elapsed="0.006894"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.655582" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-08-10T02:10:00.381502" elapsed="0.274230"/>
</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-08-10T02:10:00.667221" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04fa60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.664901" elapsed="0.002349"/>
</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-08-10T02:10:00.667863" 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-08-10T02:10:00.667472" elapsed="0.000752"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.668775" 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-08-10T02:10:00.668432" 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-08-10T02:10:00.668993" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.669200" 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 0x7777dfc45110&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:00.664497" elapsed="0.004824"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.669385" 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 0x7777dfc45110&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:00.660246" elapsed="0.009254"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.702212" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04e160&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.700028" elapsed="0.002212"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.702449" elapsed="0.000424"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.703434" 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-08-10T02:10:00.703074" 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-08-10T02:10:00.703678" elapsed="0.000168"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.706181" 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-08-10T02:10:00.704032" elapsed="0.002203"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.706278" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.697850" elapsed="0.008568"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:00.706814" 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-08-10T02:10:00.706623" elapsed="0.000217"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.743037" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04e890&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.740810" 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-08-10T02:10:00.743263" elapsed="0.000486"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.744312" 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-08-10T02:10:00.743950" 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-08-10T02:10:00.744548" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.747051" 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-08-10T02:10:00.744895" elapsed="0.002288"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.747229" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.738561" elapsed="0.008821"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.778806" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec03b6a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.776445" elapsed="0.002389"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.779027" elapsed="0.000461"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.780097" 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-08-10T02:10:00.779736" 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-08-10T02:10:00.780320" elapsed="0.000182"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.782849" 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-08-10T02:10:00.780690" elapsed="0.002213"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.782946" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.775961" elapsed="0.007108"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:00.783481" 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-08-10T02:10:00.783271" elapsed="0.000237"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.816606" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a1300&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.814385" 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-08-10T02:10:00.816827" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.817841" 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-08-10T02:10:00.817479" elapsed="0.000393"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.818060" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.820612" 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-08-10T02:10:00.818422" elapsed="0.002246"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.820711" elapsed="0.000028"/>
</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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.812179" elapsed="0.008654"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.855464" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a2250&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.853221" elapsed="0.002279"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.855762" elapsed="0.000441"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.856797" 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-08-10T02:10:00.856424" 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-08-10T02:10:00.857017" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.859543" 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-08-10T02:10:00.857378" elapsed="0.002247"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.859678" elapsed="0.000034"/>
</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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.852714" elapsed="0.007095"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:00.860196" 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-08-10T02:10:00.860013" elapsed="0.000209"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.893837" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04f060&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.891507" elapsed="0.002358"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.894093" elapsed="0.000511"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.895308" 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-08-10T02:10:00.894865" elapsed="0.000501"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.895606" elapsed="0.000227"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.898487" 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-08-10T02:10:00.896071" elapsed="0.002472"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.898587" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.889287" elapsed="0.009427"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.931249" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04f0b0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.928827" 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-08-10T02:10:00.931549" elapsed="0.000537"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.932818" 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-08-10T02:10:00.932357" elapsed="0.000500"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:00.933106" elapsed="0.000202"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.936171" 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-08-10T02:10:00.933638" elapsed="0.002591"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.936273" 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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.928350" elapsed="0.008069"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.936474" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-08-10T02:10:00.659818" elapsed="0.276771"/>
</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-08-10T02:10:00.948272" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec0a2e80&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.945898" elapsed="0.002403"/>
</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-08-10T02:10:00.948916" 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-08-10T02:10:00.948529" elapsed="0.000747"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.949850" 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-08-10T02:10:00.949487" 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-08-10T02:10:00.950076" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.950287" 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 0x7777dfc45110&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:00.945484" elapsed="0.004943"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.950475" 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 0x7777dfc45110&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:00.941192" elapsed="0.009395"/>
</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-08-10T02:10:00.957724" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04f790&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.955491" elapsed="0.002261"/>
</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-08-10T02:10:00.958347" elapsed="0.000307"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:00.957956" elapsed="0.000752"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.959258" 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-08-10T02:10:00.958898" 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-08-10T02:10:00.959492" elapsed="0.000199"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.959750" 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 0x7777dfc45110&gt;
object. The &lt;FlowLib.Flow object at 0x7777dfc45110&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:00.955069" elapsed="0.004804"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.959919" 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 0x7777dfc45110&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:00.950801" elapsed="0.009231"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:00.960428" 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-08-10T02:10:00.960225" elapsed="0.000229"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:00.993993" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04f150&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:00.991768" elapsed="0.002254"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:00.994214" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:00.995227" 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-08-10T02:10:00.994862" 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-08-10T02:10:00.995462" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:00.998194" 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-08-10T02:10:00.995889" elapsed="0.002362"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:00.998295" elapsed="0.000052"/>
</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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:00.991248" elapsed="0.007199"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:00.998835" 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-08-10T02:10:00.998651" elapsed="0.000210"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.030211" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04fec0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.027997" elapsed="0.002242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:01.030448" elapsed="0.000430"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.031465" 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-08-10T02:10:01.031077" 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-08-10T02:10:01.031698" elapsed="0.000175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.034220" 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-08-10T02:10:01.032063" elapsed="0.002215"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.034321" elapsed="0.000046"/>
</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 0x7777dfc45110&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.027507" elapsed="0.006955"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.034516" 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-08-10T02:10:00.940757" elapsed="0.093872"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.037020" 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-08-10T02:10:01.034815" elapsed="0.002299"/>
</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-08-10T02:10:01.037305" elapsed="0.002272"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.041820" 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-08-10T02:10:01.039788" elapsed="0.002078"/>
</kw>
<kw name="Get Switch Datapath ID" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-08-10T02:10:01.045029" elapsed="0.002018"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.042836" elapsed="0.004248"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.042814" elapsed="0.004296"/>
</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-08-10T02:10:01.049276" elapsed="0.002227"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.047166" elapsed="0.004377"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.047151" elapsed="0.004417"/>
</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-08-10T02:10:01.053724" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.051622" elapsed="0.002157"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.051606" elapsed="0.002197"/>
</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-08-10T02:10:01.055951" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.053856" elapsed="0.002153"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.053841" elapsed="0.002191"/>
</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-08-10T02:10:01.042588" elapsed="0.013491"/>
</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-08-10T02:10:01.058787" elapsed="0.000132"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.056572" elapsed="0.002379"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.056554" elapsed="0.002422"/>
</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-08-10T02:10:01.061145" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.059029" elapsed="0.002168"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.059013" elapsed="0.002207"/>
</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-08-10T02:10:01.056320" elapsed="0.004946"/>
</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-08-10T02:10:01.065801" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-08-10T02:10:01.079268" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:01.079487" level="INFO">${output} = 52:8d:1e:48:e6:49</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:01.065667" elapsed="0.013868"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.063546" elapsed="0.016062"/>
</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-08-10T02:10:01.080055" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.079655" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.063528" elapsed="0.016674"/>
</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-08-10T02:10:01.085098" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.080325" elapsed="0.004902"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.086404" level="INFO">${output} = 52:8d:1e:48:e6:49</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-08-10T02:10:01.085721" elapsed="0.000743"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.085280" elapsed="0.001265"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.080287" elapsed="0.006304"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:01.086668" elapsed="0.000062"/>
</return>
<msg time="2026-08-10T02:10:01.087056" level="INFO">${switch.datapath_id_output_string} = 52:8d:1e:48:e6:49</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-08-10T02:10:01.061565" elapsed="0.025548"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.089918" level="INFO">52:8d:1e:48:e6:49</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:01.087565" elapsed="0.002398"/>
</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-08-10T02:10:01.090150" elapsed="0.000290"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-08-10T02:10:01.090488" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:01.092597" level="INFO">${dpid_id} = 90766051960393</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-08-10T02:10:01.042089" elapsed="0.050574"/>
</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-08-10T02:10:01.109038" level="INFO">PUT Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=88 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.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-08-10T02:10:01.109110" level="INFO">PUT Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=88 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:01.109219" 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-08-10T02:10:01.099682" elapsed="0.009579"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.114831" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:01.109765" elapsed="0.005161"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:01.122119" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=88?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:01.122423" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:10:01.122543" 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-08-10T02:10:01.115286" elapsed="0.007284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.125157" 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-08-10T02:10:01.122779" elapsed="0.002435"/>
</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-08-10T02:10:01.125426" elapsed="0.002254"/>
</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-08-10T02:10:01.093419" elapsed="0.036595"/>
</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-08-10T02:10:01.092877" elapsed="0.037224"/>
</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-08-10T02:10:01.146140" elapsed="0.002019"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.143898" elapsed="0.004348"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.143879" elapsed="0.004394"/>
</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-08-10T02:10:01.150432" elapsed="0.002208"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.148329" elapsed="0.004351"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.148313" elapsed="0.004392"/>
</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-08-10T02:10:01.154833" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.152759" elapsed="0.002129"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.152743" elapsed="0.002168"/>
</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-08-10T02:10:01.157055" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.154965" elapsed="0.002148"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.154949" elapsed="0.002188"/>
</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-08-10T02:10:01.143617" elapsed="0.013567"/>
</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-08-10T02:10:01.159738" elapsed="0.000157"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.157669" elapsed="0.002260"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.157651" elapsed="0.002302"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:01.162082" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.160006" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.159991" elapsed="0.002166"/>
</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-08-10T02:10:01.157432" elapsed="0.004771"/>
</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-08-10T02:10:01.165026" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:10:01.177953" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:01.178085" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:01.164899" elapsed="0.013224"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.162784" elapsed="0.015393"/>
</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-08-10T02:10:01.178631" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.178214" elapsed="0.000545"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.162766" elapsed="0.016039"/>
</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-08-10T02:10:01.183708" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.178930" elapsed="0.004935"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.185008" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:01.184321" elapsed="0.000752"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.183918" elapsed="0.001233"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.178894" elapsed="0.006303"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:01.185273" elapsed="0.000096"/>
</return>
<msg time="2026-08-10T02:10:01.185644" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:01.162532" elapsed="0.023172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.186704" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8735  bytes 56562504 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6532  bytes 1491398 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:10:01.186123" elapsed="0.000705"/>
</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-08-10T02:10:01.190523" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:10:01.237232" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:01.237484" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.153s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, 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-08-10T02:10:01.190395" elapsed="0.047150"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.188248" elapsed="0.049381"/>
</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-08-10T02:10:01.238101" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.237686" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.188209" elapsed="0.050060"/>
</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-08-10T02:10:01.243156" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.238431" elapsed="0.004855"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.244424" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.153s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, 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-08-10T02:10:01.243778" elapsed="0.000684"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.243371" elapsed="0.001141"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.238393" elapsed="0.006147"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:01.244587" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:10:01.244794" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.153s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, 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-08-10T02:10:01.187567" elapsed="0.057264"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.245453" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.153s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, table=200, n_packets=0, n_bytes=0, priority=42,ip,dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=ALL</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:01.245092" elapsed="0.000426"/>
</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-08-10T02:10:01.246317" elapsed="0.000748"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.245954" elapsed="0.001166"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.245935" elapsed="0.001219"/>
</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-08-10T02:10:01.247616" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.247229" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.247207" elapsed="0.000521"/>
</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-08-10T02:10:01.245892" elapsed="0.001867"/>
</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-08-10T02:10:01.248426" elapsed="0.000443"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.248042" elapsed="0.000882"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.248022" elapsed="0.000935"/>
</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-08-10T02:10:01.249406" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.249030" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.249009" elapsed="0.000508"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:10:01.247982" elapsed="0.001566"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:10:01.245606" elapsed="0.003980"/>
</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-08-10T02:10:01.139352" elapsed="0.110310"/>
</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-08-10T02:10:01.130429" elapsed="0.119307"/>
</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-08-10T02:10:01.262087" level="INFO">DELETE Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=88 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:01.262133" level="INFO">DELETE Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=88 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:01.262273" 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-08-10T02:10:01.255704" elapsed="0.006609"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.265743" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:01.262624" elapsed="0.003179"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:01.270760" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=88?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:01.270971" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:10:01.271113" 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-08-10T02:10:01.266026" elapsed="0.005124"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-08-10T02:10:01.277049" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:10:01.271260" elapsed="0.005872"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.271234" elapsed="0.005931"/>
</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-08-10T02:10:01.277403" 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-08-10T02:10:01.277642" 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-08-10T02:10:01.250787" elapsed="0.026962"/>
</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-08-10T02:10:01.250022" elapsed="0.027798"/>
</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-08-10T02:10:01.292602" elapsed="0.001986"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.290523" elapsed="0.004102"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.290505" elapsed="0.004144"/>
</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-08-10T02:10:01.296795" elapsed="0.002180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.294703" elapsed="0.004312"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.294687" elapsed="0.004352"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:01.301178" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.299093" elapsed="0.002140"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.299077" elapsed="0.002181"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:01.303393" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.301316" elapsed="0.002136"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.301300" elapsed="0.002175"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:10:01.290268" elapsed="0.013254"/>
</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-08-10T02:10:01.306101" elapsed="0.000115"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.304024" elapsed="0.002223"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.304006" elapsed="0.002266"/>
</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-08-10T02:10:01.308427" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.306325" elapsed="0.002154"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.306309" elapsed="0.002193"/>
</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-08-10T02:10:01.303751" elapsed="0.004797"/>
</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-08-10T02:10:01.311455" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:10:01.324634" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:01.324844" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:01.311294" elapsed="0.013684"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.309072" elapsed="0.015996"/>
</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-08-10T02:10:01.325592" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.325124" elapsed="0.000598"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.309055" elapsed="0.016713"/>
</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-08-10T02:10:01.329771" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.325894" elapsed="0.003959"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.330571" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:01.330136" elapsed="0.000474"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.329886" elapsed="0.000775"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.325858" elapsed="0.004832"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:01.330738" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:10:01.330945" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:01.308822" elapsed="0.022161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.331607" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8746  bytes 56563902 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6547  bytes 1494820 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  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-08-10T02:10:01.331244" 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-08-10T02:10:01.335610" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:10:01.385680" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:01.385891" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.303s, 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-08-10T02:10:01.335432" elapsed="0.050516"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.332503" elapsed="0.053529"/>
</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-08-10T02:10:01.386553" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.386088" elapsed="0.000593"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.332479" elapsed="0.054248"/>
</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-08-10T02:10:01.391632" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.386849" elapsed="0.004916"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.392918" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.303s, 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-08-10T02:10:01.392237" elapsed="0.000741"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.391817" elapsed="0.001241"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.386815" elapsed="0.006289"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:01.393178" elapsed="0.000061"/>
</return>
<msg time="2026-08-10T02:10:01.393543" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.303s, 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-08-10T02:10:01.332097" elapsed="0.061505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.394602" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.303s, 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-08-10T02:10:01.394020" elapsed="0.000682"/>
</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-08-10T02:10:01.400540" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.395370" elapsed="0.005234"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.395305" elapsed="0.005324"/>
</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-08-10T02:10:01.401002" elapsed="0.000347"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.400740" elapsed="0.000651"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.400723" elapsed="0.000693"/>
</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-08-10T02:10:01.395240" elapsed="0.006200"/>
</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-08-10T02:10:01.401888" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.401633" elapsed="0.000314"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.401618" elapsed="0.000352"/>
</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-08-10T02:10:01.402272" elapsed="0.000335"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.402023" elapsed="0.000623"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.402008" elapsed="0.000662"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:10:01.401588" elapsed="0.001105"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:10:01.394811" elapsed="0.007911"/>
</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-08-10T02:10:01.285968" elapsed="0.116806"/>
</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-08-10T02:10:01.278106" elapsed="0.124725"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>88</arg>
<arg>42</arg>
<status status="PASS" start="2026-08-10T02:10:00.218403" elapsed="1.184495"/>
</kw>
<doc>OF1.3: OFPP_ALL = 0xfffffffc, /* All physical ports except input port. */</doc>
<tag>all</tag>
<status status="PASS" start="2026-08-10T02:10:00.217835" elapsed="1.185182"/>
</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-08-10T02:10:01.404845" 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-08-10T02:10:01.404312" elapsed="0.000562"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.405509" 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-08-10T02:10:01.405080" elapsed="0.000456"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-08-10T02:10:01.406146" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-08-10T02:10:01.406024" elapsed="0.000149"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.406215" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:01.406381" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777ec1c9f10&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-08-10T02:10:01.405720" elapsed="0.000689"/>
</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-08-10T02:10:01.411396" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.411085" elapsed="0.000377"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.411988" 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-08-10T02:10:01.411667" elapsed="0.000353"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.411487" elapsed="0.000571"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.411067" elapsed="0.001013"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.418793" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec04cd10&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.416600" elapsed="0.002221"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.419420" elapsed="0.000298"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:01.419025" elapsed="0.000746"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.420311" 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-08-10T02:10:01.419988" 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-08-10T02:10:01.420544" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.420752" 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 0x7777ec1c9f10&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:01.416180" elapsed="0.004692"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.452147" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcda980&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.449935" elapsed="0.002239"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:01.452383" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.453325" 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-08-10T02:10:01.453013" elapsed="0.000358"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:01.453561" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.456076" 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-08-10T02:10:01.453906" elapsed="0.002218"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.456167" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.449456" elapsed="0.006833"/>
</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-08-10T02:10:01.456501" elapsed="0.000182"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.456733" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:10:01.410788" elapsed="0.046062"/>
</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-08-10T02:10:01.461820" 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-08-10T02:10:01.461603" elapsed="0.000243"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.461301" elapsed="0.000585"/>
</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-08-10T02:10:01.462091" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.461911" elapsed="0.000234"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.461283" elapsed="0.000883"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.469000" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcda110&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.466798" elapsed="0.002230"/>
</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-08-10T02:10:01.469625" 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-08-10T02:10:01.469228" elapsed="0.000743"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.470491" 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-08-10T02:10:01.470162" elapsed="0.000358"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:01.470707" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.470914" 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 0x7777ec1c9f10&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:01.466398" elapsed="0.004636"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.502500" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcdaa20&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.500297" elapsed="0.002231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:01.502717" elapsed="0.000425"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.503675" 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-08-10T02:10:01.503357" 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-08-10T02:10:01.503890" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.506481" 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-08-10T02:10:01.504301" elapsed="0.002229"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.506572" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.499791" elapsed="0.006905"/>
</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-08-10T02:10:01.506892" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.507123" 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-08-10T02:10:01.461014" elapsed="0.046226"/>
</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-08-10T02:10:01.512228" 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-08-10T02:10:01.512011" elapsed="0.000243"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:01.511693" elapsed="0.000602"/>
</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-08-10T02:10:01.512520" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:01.512320" elapsed="0.000255"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:01.511674" elapsed="0.000921"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.519217" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcdac00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.517053" elapsed="0.002191"/>
</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-08-10T02:10:01.519841" elapsed="0.000305"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:01.519462" elapsed="0.000738"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.520719" 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-08-10T02:10:01.520406" elapsed="0.000341"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:01.520933" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.521140" 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 0x7777ec1c9f10&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:01.516658" elapsed="0.004600"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.553447" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6ac0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.551236" elapsed="0.002240"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:01.553668" elapsed="0.000425"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.554636" 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-08-10T02:10:01.554297" 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-08-10T02:10:01.554854" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.557404" 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-08-10T02:10:01.555199" elapsed="0.002254"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.557497" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.550753" elapsed="0.006867"/>
</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-08-10T02:10:01.557858" elapsed="0.000184"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.558092" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:10:01.511404" elapsed="0.046805"/>
</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-08-10T02:10:01.565241" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcdbd30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.563039" elapsed="0.002231"/>
</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-08-10T02:10:01.565871" 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-08-10T02:10:01.565491" elapsed="0.000737"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.566753" 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-08-10T02:10:01.566436" elapsed="0.000346"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:01.566970" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.567176" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:01.562667" elapsed="0.004629"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.567359" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:01.558442" elapsed="0.009033"/>
</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-08-10T02:10:01.616745" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcdbdd0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.574674" elapsed="0.042112"/>
</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-08-10T02:10:01.617526" 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-08-10T02:10:01.617065" elapsed="0.000829"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.618483" 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-08-10T02:10:01.618088" elapsed="0.000425"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:01.618702" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.618920" elapsed="0.000039"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:01.574286" elapsed="0.044774"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.652493" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfda0220&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.650262" elapsed="0.002260"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:01.652719" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.653697" 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-08-10T02:10:01.653374" 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-08-10T02:10:01.653913" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.656486" 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-08-10T02:10:01.654260" elapsed="0.002275"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.656578" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.648048" elapsed="0.008654"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.688369" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcd9c10&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.686127" 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-08-10T02:10:01.688596" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.689577" 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-08-10T02:10:01.689233" 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-08-10T02:10:01.689793" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.692324" 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-08-10T02:10:01.690137" elapsed="0.002256"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.692437" elapsed="0.000028"/>
</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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.685656" elapsed="0.006904"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.725967" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcd9ad0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.723636" elapsed="0.002359"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:01.726188" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.727172" 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-08-10T02:10:01.726843" elapsed="0.000359"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:01.727408" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.729925" 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-08-10T02:10:01.727757" elapsed="0.002217"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.730017" elapsed="0.000028"/>
</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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.721447" elapsed="0.008691"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.763390" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcd98f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.761194" elapsed="0.002225"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:01.763611" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.764632" 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-08-10T02:10:01.764277" 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-08-10T02:10:01.764852" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.767365" 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-08-10T02:10:01.765195" elapsed="0.002221"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.767458" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.758998" elapsed="0.008621"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.799058" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcd95d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.796869" elapsed="0.002217"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:01.799277" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.800297" 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-08-10T02:10:01.799930" elapsed="0.000398"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:01.800537" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.803046" 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-08-10T02:10:01.800884" elapsed="0.002212"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.803139" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.796403" elapsed="0.006858"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.834999" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6a70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.832675" 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-08-10T02:10:01.835217" elapsed="0.000451"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.836236" 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-08-10T02:10:01.835867" 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-08-10T02:10:01.836478" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.838986" 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-08-10T02:10:01.836826" elapsed="0.002212"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.839081" elapsed="0.000028"/>
</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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.832166" elapsed="0.007036"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.839256" elapsed="0.000024"/>
</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-08-10T02:10:01.568108" elapsed="0.271279"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.870780" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7010&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.868588" 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-08-10T02:10:01.870998" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.871992" 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-08-10T02:10:01.871650" 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-08-10T02:10:01.872260" elapsed="0.000179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.874784" 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-08-10T02:10:01.872625" elapsed="0.002211"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.874878" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.868076" elapsed="0.006925"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.875054" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-08-10T02:10:01.567654" elapsed="0.307513"/>
</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-08-10T02:10:01.886592" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7740&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.884407" elapsed="0.002213"/>
</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-08-10T02:10:01.887199" elapsed="0.000319"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:01.886821" elapsed="0.000751"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.888100" 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-08-10T02:10:01.887760" 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-08-10T02:10:01.888347" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.888559" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:01.883958" elapsed="0.004720"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.888723" 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 0x7777ec1c9f10&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:01.879718" elapsed="0.009118"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.921840" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ecbedc60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.919634" 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-08-10T02:10:01.922060" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.923048" 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-08-10T02:10:01.922706" 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-08-10T02:10:01.923264" elapsed="0.000180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.925801" 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-08-10T02:10:01.923630" elapsed="0.002224"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.925896" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.917468" elapsed="0.008550"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:01.926483" 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-08-10T02:10:01.926272" elapsed="0.000236"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.961189" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ecbed940&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.958962" 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-08-10T02:10:01.961430" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.962432" 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-08-10T02:10:01.962068" 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-08-10T02:10:01.962649" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:01.965179" 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-08-10T02:10:01.962991" elapsed="0.002241"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:01.965275" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.956785" elapsed="0.008638"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:01.996576" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b64d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:01.994353" elapsed="0.002251"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:01.996794" elapsed="0.000430"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:01.997790" 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-08-10T02:10:01.997440" 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-08-10T02:10:01.998007" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.000646" 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-08-10T02:10:01.998365" elapsed="0.002335"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.000742" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:01.993873" elapsed="0.006991"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:02.001247" 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-08-10T02:10:02.001065" elapsed="0.000208"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.034214" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7560&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.032007" elapsed="0.002235"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.034453" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.035459" 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-08-10T02:10:02.035087" elapsed="0.000449"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:02.035728" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.038264" 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-08-10T02:10:02.036075" elapsed="0.002249"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.038384" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.029830" elapsed="0.008679"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.069853" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6980&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.067620" elapsed="0.002261"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.070072" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.071079" 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-08-10T02:10:02.070724" 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-08-10T02:10:02.071296" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.073852" 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-08-10T02:10:02.071659" elapsed="0.002249"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.073951" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.067141" elapsed="0.006933"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:02.074480" 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-08-10T02:10:02.074277" elapsed="0.000229"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.107446" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcd8450&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.105218" elapsed="0.002256"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.107665" elapsed="0.000429"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.108704" 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-08-10T02:10:02.108323" 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-08-10T02:10:02.108923" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.111577" 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-08-10T02:10:02.109268" elapsed="0.002399"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.111711" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-destination</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.103016" elapsed="0.008819"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.143284" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e6980&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.141073" elapsed="0.002239"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.143523" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.144556" 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-08-10T02:10:02.144156" elapsed="0.000431"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:02.144774" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.147378" 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-08-10T02:10:02.145119" elapsed="0.002317"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.147480" elapsed="0.000028"/>
</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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.140611" elapsed="0.006992"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.147656" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-08-10T02:10:01.879278" elapsed="0.268491"/>
</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-08-10T02:10:02.159142" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6bb0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.156934" 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-08-10T02:10:02.159767" elapsed="0.000299"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:02.159389" elapsed="0.000731"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.160701" 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-08-10T02:10:02.160322" 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-08-10T02:10:02.160921" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.161130" 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 0x7777ec1c9f10&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:02.156528" elapsed="0.004723"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.161298" 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 0x7777ec1c9f10&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:02.152272" elapsed="0.009159"/>
</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-08-10T02:10:02.168697" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6b10&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.166458" elapsed="0.002267"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.169359" 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-08-10T02:10:02.168962" elapsed="0.000755"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.170268" 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-08-10T02:10:02.169907" 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-08-10T02:10:02.170501" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.170711" 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 0x7777ec1c9f10&gt;
object. The &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:02.166037" elapsed="0.004795"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.170878" elapsed="0.000024"/>
</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 0x7777ec1c9f10&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:02.161644" elapsed="0.009346"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:02.171377" 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-08-10T02:10:02.171181" elapsed="0.000223"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.202634" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b4770&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.200413" 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-08-10T02:10:02.202853" elapsed="0.000426"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.203862" 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-08-10T02:10:02.203497" 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-08-10T02:10:02.204077" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.206620" 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-08-10T02:10:02.204468" elapsed="0.002209"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.206720" 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 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.199908" elapsed="0.006934"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:02.207225" 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-08-10T02:10:02.207043" elapsed="0.000207"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.238464" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e5170&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.236202" elapsed="0.002290"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.238683" elapsed="0.000426"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.239695" 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-08-10T02:10:02.239309" 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-08-10T02:10:02.239911" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.242575" 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-08-10T02:10:02.240258" elapsed="0.002408"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.242710" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777ec1c9f10&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.235740" elapsed="0.007094"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.242888" elapsed="0.000024"/>
</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-08-10T02:10:02.151832" elapsed="0.091169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.245371" 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-08-10T02:10:02.243186" elapsed="0.002243"/>
</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-08-10T02:10:02.245617" elapsed="0.002259"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.250132" 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-08-10T02:10:02.248069" elapsed="0.002110"/>
</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-08-10T02:10:02.253409" elapsed="0.002035"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.251146" elapsed="0.004336"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.251124" elapsed="0.004384"/>
</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-08-10T02:10:02.257675" elapsed="0.002215"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.255572" elapsed="0.004359"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.255555" elapsed="0.004400"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:02.262139" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.260009" elapsed="0.002187"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.259993" elapsed="0.002227"/>
</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-08-10T02:10:02.264405" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.262273" elapsed="0.002193"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.262258" elapsed="0.002231"/>
</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-08-10T02:10:02.250906" elapsed="0.013632"/>
</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-08-10T02:10:02.267123" elapsed="0.000133"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.265030" elapsed="0.002259"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.265013" elapsed="0.002300"/>
</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-08-10T02:10:02.269508" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.267386" elapsed="0.002175"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.267369" elapsed="0.002214"/>
</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-08-10T02:10:02.264791" elapsed="0.004838"/>
</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-08-10T02:10:02.274197" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-08-10T02:10:02.288219" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:02.288535" level="INFO">${output} = 52:8d:1e:48:e6:49</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:02.274028" elapsed="0.014570"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.271910" elapsed="0.016784"/>
</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-08-10T02:10:02.289226" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.288758" elapsed="0.000640"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.271891" elapsed="0.017558"/>
</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-08-10T02:10:02.294149" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.289588" elapsed="0.004643"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.294959" level="INFO">${output} = 52:8d:1e:48:e6:49</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-08-10T02:10:02.294539" elapsed="0.000459"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.294265" elapsed="0.000783"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.289549" elapsed="0.005529"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:02.295125" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:10:02.295396" level="INFO">${switch.datapath_id_output_string} = 52:8d:1e:48:e6:49</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-08-10T02:10:02.269920" elapsed="0.025513"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.298618" level="INFO">52:8d:1e:48:e6:49</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:02.295700" elapsed="0.002981"/>
</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-08-10T02:10:02.298946" elapsed="0.000410"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-08-10T02:10:02.299425" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:10:02.302079" level="INFO">${dpid_id} = 90766051960393</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-08-10T02:10:02.250413" elapsed="0.051693"/>
</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-08-10T02:10:02.317889" level="INFO">PUT Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=21 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.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-08-10T02:10:02.317974" level="INFO">PUT Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=21 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:02.318116" 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-08-10T02:10:02.309072" elapsed="0.009079"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.321567" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:02.318460" elapsed="0.003167"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:02.327157" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=21?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:02.327511" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:10:02.327721" 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-08-10T02:10:02.321849" elapsed="0.005909"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.331404" 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-08-10T02:10:02.328037" elapsed="0.003449"/>
</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-08-10T02:10:02.331751" elapsed="0.003159"/>
</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-08-10T02:10:02.302861" elapsed="0.032138"/>
</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-08-10T02:10:02.302315" elapsed="0.032761"/>
</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-08-10T02:10:02.349820" elapsed="0.002015"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.347704" elapsed="0.004170"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.347685" elapsed="0.004214"/>
</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-08-10T02:10:02.354069" elapsed="0.002196"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.351955" elapsed="0.004350"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.351939" elapsed="0.004406"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:02.358493" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.356415" elapsed="0.002134"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.356398" elapsed="0.002175"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:02.360723" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.358626" elapsed="0.002155"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.358611" elapsed="0.002194"/>
</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-08-10T02:10:02.347468" elapsed="0.013384"/>
</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-08-10T02:10:02.363563" elapsed="0.000119"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.361317" elapsed="0.002398"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.361300" elapsed="0.002440"/>
</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-08-10T02:10:02.365887" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.363794" elapsed="0.002145"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.363778" elapsed="0.002184"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:10:02.361084" elapsed="0.004930"/>
</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-08-10T02:10:02.368831" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:10:02.381955" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:02.382181" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:02.368704" elapsed="0.013543"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.366567" elapsed="0.015815"/>
</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-08-10T02:10:02.382904" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.382448" elapsed="0.000589"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.366550" elapsed="0.016536"/>
</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-08-10T02:10:02.387078" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.383221" elapsed="0.003940"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.387942" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:02.387527" elapsed="0.000456"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.387245" elapsed="0.000789"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.383182" elapsed="0.004882"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:02.388113" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:10:02.388322" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:02.366297" elapsed="0.022100"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.389011" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8769  bytes 56566590 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6576  bytes 1499550 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  txqueuelen 1000  (Ethernet)
        RX packets 7  bytes 756 (756.0 B)
        RX errors 0  dropped 7  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-08-10T02:10:02.388667" elapsed="0.000424"/>
</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-08-10T02:10:02.393013" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:10:02.441744" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:02.441967" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.358s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.117s, 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-08-10T02:10:02.392837" elapsed="0.049192"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.389888" elapsed="0.052231"/>
</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-08-10T02:10:02.442677" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.442180" elapsed="0.000632"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.389864" elapsed="0.052998"/>
</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-08-10T02:10:02.448222" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.442996" elapsed="0.005401"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.449451" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.358s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.117s, 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-08-10T02:10:02.448948" elapsed="0.000530"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.448509" elapsed="0.001005"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.442957" elapsed="0.006578"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:02.449569" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:02.449716" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.358s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.117s, 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-08-10T02:10:02.389507" elapsed="0.060235"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.450178" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.358s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.117s, 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-08-10T02:10:02.449935" elapsed="0.000289"/>
</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-08-10T02:10:02.450806" elapsed="0.000522"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.450547" elapsed="0.000849"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.450533" 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-08-10T02:10:02.451733" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.451475" elapsed="0.000314"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.451459" elapsed="0.000353"/>
</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-08-10T02:10:02.450500" elapsed="0.001335"/>
</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-08-10T02:10:02.452310" elapsed="0.000370"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.452024" elapsed="0.000700"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.452010" elapsed="0.000738"/>
</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-08-10T02:10:02.453058" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.452803" elapsed="0.000312"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.452787" elapsed="0.000351"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:10:02.451981" elapsed="0.001179"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:10:02.450278" elapsed="0.002910"/>
</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-08-10T02:10:02.343176" elapsed="0.110067"/>
</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-08-10T02:10:02.335398" elapsed="0.117899"/>
</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-08-10T02:10:02.466544" level="INFO">DELETE Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=21 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:02.466596" level="INFO">DELETE Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=21 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:02.466712" 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-08-10T02:10:02.458551" elapsed="0.008191"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.470587" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:02.466978" elapsed="0.003736"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:02.477305" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=21?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:02.477492" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:10:02.477595" 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-08-10T02:10:02.471172" elapsed="0.006450"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-08-10T02:10:02.481836" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:10:02.477702" elapsed="0.004196"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.477682" elapsed="0.004241"/>
</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-08-10T02:10:02.482082" elapsed="0.000022"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:02.482252" elapsed="0.000020"/>
</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-08-10T02:10:02.454061" elapsed="0.028284"/>
</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-08-10T02:10:02.453525" elapsed="0.028874"/>
</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-08-10T02:10:02.496529" elapsed="0.002014"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.494418" elapsed="0.004163"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.494399" elapsed="0.004206"/>
</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-08-10T02:10:02.500764" elapsed="0.002192"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.498660" elapsed="0.004336"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.498644" elapsed="0.004377"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:02.505171" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.503074" elapsed="0.002194"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.503058" elapsed="0.002236"/>
</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-08-10T02:10:02.507459" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.505371" elapsed="0.002148"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.505354" elapsed="0.002189"/>
</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-08-10T02:10:02.494168" elapsed="0.013423"/>
</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-08-10T02:10:02.510142" elapsed="0.000116"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.508055" elapsed="0.002236"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.508038" elapsed="0.002277"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:02.512482" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.510387" elapsed="0.002150"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.510370" elapsed="0.002190"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:10:02.507822" elapsed="0.004785"/>
</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-08-10T02:10:02.515517" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:10:02.528109" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:02.528207" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:02.515388" elapsed="0.012847"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.513138" elapsed="0.015137"/>
</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-08-10T02:10:02.528535" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.528304" elapsed="0.000290"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.513121" elapsed="0.015495"/>
</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-08-10T02:10:02.530828" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.528674" elapsed="0.002213"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.531405" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:02.531091" elapsed="0.000343"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.530911" elapsed="0.000560"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.528657" elapsed="0.002835"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:02.531526" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:02.531672" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:02.512887" elapsed="0.018813"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.532132" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8780  bytes 56567988 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6591  bytes 1502988 (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 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  txqueuelen 1000  (Ethernet)
        RX packets 7  bytes 756 (756.0 B)
        RX errors 0  dropped 7  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-08-10T02:10:02.531891" elapsed="0.000297"/>
</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-08-10T02:10:02.534998" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:10:02.589079" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:02.589176" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.506s, 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-08-10T02:10:02.534872" elapsed="0.054329"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.532791" elapsed="0.056449"/>
</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-08-10T02:10:02.589475" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.589265" elapsed="0.000303"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.532774" elapsed="0.056815"/>
</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-08-10T02:10:02.591760" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.589646" elapsed="0.002173"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.592315" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.506s, 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-08-10T02:10:02.592025" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.591843" elapsed="0.000552"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.589629" elapsed="0.002787"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:02.592450" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:10:02.592617" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.506s, 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-08-10T02:10:02.532513" elapsed="0.060129"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.593077" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.506s, 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-08-10T02:10:02.592834" elapsed="0.000288"/>
</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-08-10T02:10:02.593692" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.593435" elapsed="0.000316"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.593420" elapsed="0.000354"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-08-10T02:10:02.594074" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.593826" elapsed="0.000620"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.593811" elapsed="0.000658"/>
</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-08-10T02:10:02.593390" elapsed="0.001102"/>
</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-08-10T02:10:02.594938" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.594682" elapsed="0.000313"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.594668" elapsed="0.000351"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-08-10T02:10:02.595316" elapsed="0.000332"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.595070" elapsed="0.000617"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.595055" elapsed="0.000655"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:10:02.594640" elapsed="0.001093"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:10:02.593172" elapsed="0.002589"/>
</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-08-10T02:10:02.489902" elapsed="0.105909"/>
</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-08-10T02:10:02.482609" elapsed="0.113257"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>21</arg>
<arg>21</arg>
<status status="PASS" start="2026-08-10T02:10:01.403862" elapsed="1.192069"/>
</kw>
<doc>OF1.3 OFPP_CONTROLLER = 0xfffffffd, /* Send to controller. */</doc>
<tag>controller</tag>
<status status="PASS" start="2026-08-10T02:10:01.403366" elapsed="1.192688"/>
</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-08-10T02:10:02.597909" 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-08-10T02:10:02.597440" elapsed="0.000496"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.598561" 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-08-10T02:10:02.598140" elapsed="0.000447"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-08-10T02:10:02.599192" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777dff0e410&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-08-10T02:10:02.599071" elapsed="0.000147"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.599261" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:02.599432" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7777dff0e410&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-08-10T02:10:02.598768" elapsed="0.000690"/>
</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-08-10T02:10:02.605152" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.604857" elapsed="0.000360"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.605731" 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-08-10T02:10:02.605441" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.605240" elapsed="0.000553"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.604838" elapsed="0.000976"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.612542" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec343240&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.610303" elapsed="0.002268"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.613163" elapsed="0.000319"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:02.612777" elapsed="0.000760"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.614085" 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-08-10T02:10:02.613730" 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-08-10T02:10:02.614308" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.614541" 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 0x7777dff0e410&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:02.609902" elapsed="0.004758"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.645914" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec343100&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.643713" elapsed="0.002229"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.646134" elapsed="0.000462"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.647111" 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-08-10T02:10:02.646797" elapsed="0.000343"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:02.647347" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.649878" 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-08-10T02:10:02.647697" elapsed="0.002228"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.649969" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.643207" elapsed="0.006884"/>
</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-08-10T02:10:02.650289" elapsed="0.000201"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.650540" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:10:02.604524" elapsed="0.046134"/>
</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-08-10T02:10:02.655648" 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-08-10T02:10:02.655431" elapsed="0.000243"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.655120" elapsed="0.000595"/>
</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-08-10T02:10:02.655921" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.655740" elapsed="0.000235"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.655103" elapsed="0.000892"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.662839" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ecbed620&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.660667" elapsed="0.002200"/>
</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-08-10T02:10:02.663512" 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-08-10T02:10:02.663073" elapsed="0.000792"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.664387" 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-08-10T02:10:02.664057" elapsed="0.000359"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:02.664619" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.664831" 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 0x7777dff0e410&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:02.660220" elapsed="0.004731"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.696220" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ee531940&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.694050" elapsed="0.002198"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.696463" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.697449" 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-08-10T02:10:02.697111" elapsed="0.000367"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:02.697667" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.700176" 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-08-10T02:10:02.698011" elapsed="0.002213"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.700267" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.693568" elapsed="0.006840"/>
</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-08-10T02:10:02.700633" elapsed="0.000184"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.700866" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:10:02.654832" elapsed="0.046151"/>
</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-08-10T02:10:02.705939" 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-08-10T02:10:02.705727" elapsed="0.000239"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:02.705438" elapsed="0.000569"/>
</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-08-10T02:10:02.706210" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:02.706031" elapsed="0.000233"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:02.705418" elapsed="0.000866"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.712976" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ecb88270&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.710797" elapsed="0.002206"/>
</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-08-10T02:10:02.713658" 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-08-10T02:10:02.713203" elapsed="0.000806"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.714531" 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-08-10T02:10:02.714198" 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-08-10T02:10:02.714746" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.714954" 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 0x7777dff0e410&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:02.710401" elapsed="0.004713"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.746688" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6610&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.744480" 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-08-10T02:10:02.746909" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.747880" 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-08-10T02:10:02.747559" 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-08-10T02:10:02.748096" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.750652" 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-08-10T02:10:02.748461" elapsed="0.002239"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.750744" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.743976" elapsed="0.006892"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:02.751064" elapsed="0.000182"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.751296" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-08-10T02:10:02.705126" elapsed="0.046306"/>
</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-08-10T02:10:02.758435" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec21ed40&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.756222" 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-08-10T02:10:02.759041" elapsed="0.000324"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:02.758663" elapsed="0.000757"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.759924" 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-08-10T02:10:02.759608" elapsed="0.000346"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:02.760141" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.760364" 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 0x7777dff0e410&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:02.755849" elapsed="0.004637"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.760532" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:02.751642" elapsed="0.009033"/>
</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-08-10T02:10:02.770162" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec349030&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.767835" elapsed="0.002355"/>
</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-08-10T02:10:02.770827" 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-08-10T02:10:02.770442" elapsed="0.000737"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.771702" 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-08-10T02:10:02.771383" 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-08-10T02:10:02.771918" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.772164" 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 0x7777dff0e410&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:02.767463" elapsed="0.004824"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.805619" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ecbec720&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.803434" elapsed="0.002213"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.805837" elapsed="0.000425"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.806802" 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-08-10T02:10:02.806478" elapsed="0.000354"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:02.807019" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.809561" 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-08-10T02:10:02.807385" elapsed="0.002225"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.809653" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<arg>${EMPTY}</arg>
<arg>instructions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.801202" elapsed="0.008573"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.841360" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ecb8aac0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.839137" elapsed="0.002252"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.841580" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.842555" 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-08-10T02:10:02.842210" 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-08-10T02:10:02.842774" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.845298" 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-08-10T02:10:02.843123" elapsed="0.002247"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.845413" elapsed="0.000028"/>
</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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.838672" elapsed="0.006863"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.878617" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e4e50&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.876433" elapsed="0.002212"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.878834" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.879819" 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-08-10T02:10:02.879489" elapsed="0.000360"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:02.880035" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.882764" 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-08-10T02:10:02.880400" elapsed="0.002455"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.882899" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.874240" elapsed="0.008784"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.916300" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b76f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.914110" elapsed="0.002218"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.916534" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.917530" 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-08-10T02:10:02.917180" 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-08-10T02:10:02.917748" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.920230" 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-08-10T02:10:02.918089" elapsed="0.002191"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.920323" elapsed="0.000047"/>
</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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.911890" elapsed="0.008578"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.951819" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b5ad0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.949637" elapsed="0.002210"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.952037" elapsed="0.000455"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.953063" 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-08-10T02:10:02.952720" 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-08-10T02:10:02.953280" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.955804" 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-08-10T02:10:02.953645" elapsed="0.002211"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.955899" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.949148" elapsed="0.006873"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:02.987452" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7290&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:02.985238" elapsed="0.002242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:02.987669" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:02.988653" 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-08-10T02:10:02.988298" 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-08-10T02:10:02.988939" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:02.991582" 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-08-10T02:10:02.989288" elapsed="0.002347"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.991677" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:02.984753" elapsed="0.007047"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:02.991853" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-08-10T02:10:02.761295" elapsed="0.230673"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.023437" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e61b0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.021223" elapsed="0.002242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:03.023655" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.024653" 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-08-10T02:10:03.024288" 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-08-10T02:10:03.024908" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.027451" 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-08-10T02:10:03.025253" elapsed="0.002251"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.027546" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.020758" elapsed="0.006910"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.027722" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-08-10T02:10:02.760853" elapsed="0.266982"/>
</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-08-10T02:10:03.039205" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b4770&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.037010" 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-08-10T02:10:03.039829" elapsed="0.000299"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:10:03.039451" elapsed="0.000731"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.040760" 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-08-10T02:10:03.040393" elapsed="0.000398"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:03.040979" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.041187" 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 0x7777dff0e410&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:03.036591" elapsed="0.004717"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.041406" 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 0x7777dff0e410&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:03.032358" elapsed="0.009169"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.074578" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b6a70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.072347" 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-08-10T02:10:03.074798" elapsed="0.000427"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.075790" 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-08-10T02:10:03.075442" 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-08-10T02:10:03.076009" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.078552" 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-08-10T02:10:03.076372" elapsed="0.002232"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.078648" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.070015" elapsed="0.008757"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:03.079167" 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-08-10T02:10:03.078977" elapsed="0.000216"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.112117" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7470&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.109919" 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-08-10T02:10:03.112452" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.113494" 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-08-10T02:10:03.113122" 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-08-10T02:10:03.113712" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.116221" 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-08-10T02:10:03.114060" elapsed="0.002214"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.116317" elapsed="0.000049"/>
</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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.107729" elapsed="0.008734"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.147674" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b76a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.145466" elapsed="0.002236"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:03.147893" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.148927" 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-08-10T02:10:03.148544" 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-08-10T02:10:03.149196" elapsed="0.000180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.151853" 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-08-10T02:10:03.149563" elapsed="0.002346"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.151952" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.144986" elapsed="0.007088"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:03.152475" 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-08-10T02:10:03.152276" elapsed="0.000225"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.185574" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e7920&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.183317" elapsed="0.002286"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:03.185794" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.186801" 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-08-10T02:10:03.186446" 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-08-10T02:10:03.187019" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.189546" 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-08-10T02:10:03.187384" elapsed="0.002218"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.189646" elapsed="0.000028"/>
</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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.181128" elapsed="0.008641"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.221188" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e6bb0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.218955" elapsed="0.002261"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:03.221425" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.222434" 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-08-10T02:10:03.222060" 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-08-10T02:10:03.222651" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.225183" 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-08-10T02:10:03.222997" elapsed="0.002243"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.225320" elapsed="0.000048"/>
</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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.218494" elapsed="0.006971"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:03.225850" 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-08-10T02:10:03.225668" elapsed="0.000208"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.259079" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b7010&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.256863" elapsed="0.002245"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:03.259299" elapsed="0.000451"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.260310" 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-08-10T02:10:03.259951" elapsed="0.000406"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-08-10T02:10:03.260549" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.263214" 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-08-10T02:10:03.260914" elapsed="0.002355"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.263313" elapsed="0.000044"/>
</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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.254640" elapsed="0.008814"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.294904" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec1b73d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.292685" elapsed="0.002247"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:03.295121" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.296137" 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-08-10T02:10:03.295773" 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-08-10T02:10:03.296373" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.298899" 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-08-10T02:10:03.296720" elapsed="0.002236"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.299000" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.292200" elapsed="0.006921"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.299175" elapsed="0.000024"/>
</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-08-10T02:10:03.031918" elapsed="0.267433"/>
</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-08-10T02:10:03.310733" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e5d00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.308527" elapsed="0.002235"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.311359" 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-08-10T02:10:03.310962" elapsed="0.000754"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.312261" 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-08-10T02:10:03.311904" 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-08-10T02:10:03.312495" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.312704" 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 0x7777dff0e410&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:03.308067" elapsed="0.004756"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.312900" 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 0x7777dff0e410&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:03.303850" elapsed="0.009170"/>
</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-08-10T02:10:03.320239" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e5fd0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.318045" elapsed="0.002222"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.320890" 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-08-10T02:10:03.320488" elapsed="0.000758"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.321816" 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-08-10T02:10:03.321457" 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-08-10T02:10:03.322032" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.322239" 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 0x7777dff0e410&gt;
object. The &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-08-10T02:10:03.317640" elapsed="0.004736"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.322425" 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 0x7777dff0e410&gt; object</doc>
<status status="PASS" start="2026-08-10T02:10:03.313235" elapsed="0.009303"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:03.322911" 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-08-10T02:10:03.322730" elapsed="0.000206"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.354306" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777ec3e49f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.352048" 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-08-10T02:10:03.354543" elapsed="0.000427"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.355560" 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-08-10T02:10:03.355169" 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-08-10T02:10:03.355776" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.358318" 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-08-10T02:10:03.356126" elapsed="0.002302"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.358473" 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 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.351583" elapsed="0.007013"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:03.358981" 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-08-10T02:10:03.358798" elapsed="0.000209"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:10:03.390404" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7777dfcdb2e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:10:03.388143" elapsed="0.002289"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-08-10T02:10:03.390624" elapsed="0.000427"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-08-10T02:10:03.391640" 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-08-10T02:10:03.391250" 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-08-10T02:10:03.391857" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.394524" 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-08-10T02:10:03.392202" elapsed="0.002379"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.394625" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7777dff0e410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-08-10T02:10:03.387655" elapsed="0.007093"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-08-10T02:10:03.394801" 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-08-10T02:10:03.303427" elapsed="0.091487"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.397278" 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-08-10T02:10:03.395099" elapsed="0.002251"/>
</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-08-10T02:10:03.397540" elapsed="0.002256"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.402041" 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-08-10T02:10:03.399991" elapsed="0.002097"/>
</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-08-10T02:10:03.405106" elapsed="0.002002"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.403010" elapsed="0.004135"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.402992" elapsed="0.004177"/>
</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-08-10T02:10:03.409314" elapsed="0.002201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.407223" elapsed="0.004366"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.407207" elapsed="0.004410"/>
</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-08-10T02:10:03.413783" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.411673" elapsed="0.002166"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.411657" elapsed="0.002205"/>
</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-08-10T02:10:03.416000" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.413916" elapsed="0.002141"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.413901" elapsed="0.002179"/>
</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-08-10T02:10:03.402780" elapsed="0.013346"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-08-10T02:10:03.418707" elapsed="0.000117"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.416612" elapsed="0.002245"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.416595" elapsed="0.002286"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:03.421024" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.418935" elapsed="0.002142"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.418919" elapsed="0.002181"/>
</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-08-10T02:10:03.416375" elapsed="0.004771"/>
</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-08-10T02:10:03.425628" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-08-10T02:10:03.438688" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:03.438787" level="INFO">${output} = 52:8d:1e:48:e6:49</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:03.425500" elapsed="0.013312"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.423407" elapsed="0.015445"/>
</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-08-10T02:10:03.439071" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.438879" elapsed="0.000248"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.423389" elapsed="0.015759"/>
</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-08-10T02:10:03.441356" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.439205" elapsed="0.002210"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.441911" level="INFO">${output} = 52:8d:1e:48:e6:49</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-08-10T02:10:03.441620" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.441438" elapsed="0.000534"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.439189" elapsed="0.002804"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:03.442027" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:03.442203" level="INFO">${switch.datapath_id_output_string} = 52:8d:1e:48:e6:49</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-08-10T02:10:03.421447" elapsed="0.020782"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.444508" level="INFO">52:8d:1e:48:e6:49</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:03.442438" elapsed="0.002115"/>
</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-08-10T02:10:03.444741" elapsed="0.000307"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-08-10T02:10:03.445096" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:03.447205" level="INFO">${dpid_id} = 90766051960393</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-08-10T02:10:03.402299" elapsed="0.044932"/>
</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-08-10T02:10:03.462414" level="INFO">PUT Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=32 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.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-08-10T02:10:03.462508" level="INFO">PUT Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=32 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:03.462610" 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-08-10T02:10:03.454204" elapsed="0.008432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.465069" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:03.462838" elapsed="0.002275"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:03.469450" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=32?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:03.469667" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:10:03.469784" 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-08-10T02:10:03.465271" elapsed="0.004540"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.472383" 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-08-10T02:10:03.470014" elapsed="0.002428"/>
</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-08-10T02:10:03.472634" elapsed="0.002277"/>
</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-08-10T02:10:03.447959" elapsed="0.027018"/>
</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-08-10T02:10:03.447458" elapsed="0.027574"/>
</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-08-10T02:10:03.489204" elapsed="0.002003"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.487082" elapsed="0.004163"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.487063" elapsed="0.004207"/>
</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-08-10T02:10:03.493431" elapsed="0.002192"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.491324" elapsed="0.004339"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.491308" elapsed="0.004379"/>
</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-08-10T02:10:03.497845" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.495742" elapsed="0.002159"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.495725" 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-08-10T02:10:03.500044" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.497978" elapsed="0.002124"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.497963" elapsed="0.002162"/>
</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-08-10T02:10:03.486847" elapsed="0.013325"/>
</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-08-10T02:10:03.502793" elapsed="0.000114"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.500698" elapsed="0.002243"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.500680" elapsed="0.002285"/>
</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-08-10T02:10:03.505742" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.503018" elapsed="0.002777"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.503002" elapsed="0.002816"/>
</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-08-10T02:10:03.500424" elapsed="0.005442"/>
</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-08-10T02:10:03.508633" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:10:03.521611" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:03.521708" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:03.508506" elapsed="0.013230"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.506411" elapsed="0.015366"/>
</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-08-10T02:10:03.521992" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.521804" elapsed="0.000244"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.506393" elapsed="0.015675"/>
</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-08-10T02:10:03.524246" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.522126" elapsed="0.002179"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.524822" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:03.524526" elapsed="0.000325"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.524344" elapsed="0.000544"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.522110" elapsed="0.002799"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:03.524944" elapsed="0.000047"/>
</return>
<msg time="2026-08-10T02:10:03.525114" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:03.506142" elapsed="0.018999"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.525599" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8809  bytes 56571110 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6623  bytes 1514212 (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 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  txqueuelen 1000  (Ethernet)
        RX packets 7  bytes 756 (756.0 B)
        RX errors 0  dropped 7  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-08-10T02:10:03.525348" elapsed="0.000308"/>
</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-08-10T02:10:03.528432" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:10:03.581031" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:03.581129" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.498s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.113s, 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-08-10T02:10:03.528290" elapsed="0.052864"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.526207" elapsed="0.054987"/>
</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-08-10T02:10:03.581432" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.581220" elapsed="0.000270"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.526189" elapsed="0.055322"/>
</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-08-10T02:10:03.583674" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.581567" elapsed="0.002165"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.584220" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.498s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.113s, 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-08-10T02:10:03.583931" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.583755" elapsed="0.000562"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.581551" elapsed="0.002804"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:03.584392" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:03.584543" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.498s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.113s, 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-08-10T02:10:03.525937" elapsed="0.058633"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.585028" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.498s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.113s, 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-08-10T02:10:03.584758" elapsed="0.000318"/>
</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-08-10T02:10:03.585648" elapsed="0.000506"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.585389" elapsed="0.000806"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.585374" elapsed="0.000845"/>
</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-08-10T02:10:03.586550" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.586273" elapsed="0.000335"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.586257" elapsed="0.000373"/>
</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-08-10T02:10:03.585325" elapsed="0.001328"/>
</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-08-10T02:10:03.587087" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.586838" elapsed="0.000622"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.586824" elapsed="0.000660"/>
</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-08-10T02:10:03.587787" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.587538" elapsed="0.000306"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.587522" elapsed="0.000345"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:10:03.586795" elapsed="0.001095"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:10:03.585128" elapsed="0.002789"/>
</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-08-10T02:10:03.482554" elapsed="0.105415"/>
</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-08-10T02:10:03.475245" elapsed="0.112776"/>
</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-08-10T02:10:03.600316" level="INFO">DELETE Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=32 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:03.600383" level="INFO">DELETE Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=32 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:03.600483" 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-08-10T02:10:03.593251" elapsed="0.007258"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.602936" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:03.600709" elapsed="0.002270"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:03.607730" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/flow-node-inventory:table=200/flow=32?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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=node01jznrhz988o7yomw675aosw3311.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:03.607879" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A90766051960393/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-08-10T02:10:03.607980" 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-08-10T02:10:03.603138" elapsed="0.004870"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-08-10T02:10:03.612246" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:10:03.608123" elapsed="0.004182"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.608103" elapsed="0.004241"/>
</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-08-10T02:10:03.612501" elapsed="0.000022"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:03.612671" elapsed="0.000020"/>
</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-08-10T02:10:03.588773" elapsed="0.023975"/>
</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-08-10T02:10:03.588228" elapsed="0.024572"/>
</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-08-10T02:10:03.629908" elapsed="0.002013"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.627819" elapsed="0.004140"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.627801" elapsed="0.004182"/>
</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-08-10T02:10:03.634150" elapsed="0.002213"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.632037" elapsed="0.004367"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.632021" elapsed="0.004410"/>
</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-08-10T02:10:03.638574" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.636489" elapsed="0.002140"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.636473" elapsed="0.002179"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:03.640778" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.638707" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.638691" elapsed="0.002167"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-08-10T02:10:03.627586" elapsed="0.013319"/>
</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-08-10T02:10:03.643495" elapsed="0.000115"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.641420" elapsed="0.002223"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.641402" elapsed="0.002265"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:03.645804" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.643721" elapsed="0.002135"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.643705" elapsed="0.002174"/>
</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-08-10T02:10:03.641165" elapsed="0.004761"/>
</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-08-10T02:10:03.648877" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-08-10T02:10:03.662126" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:03.662373" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-08-10T02:10:03.648748" elapsed="0.013693"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.646480" elapsed="0.016048"/>
</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-08-10T02:10:03.663007" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.662583" elapsed="0.000552"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.646463" 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-08-10T02:10:03.667059" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.663307" elapsed="0.003834"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.667867" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:03.667454" elapsed="0.000454"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.667174" elapsed="0.000784"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.663272" elapsed="0.004715"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:03.668035" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:10:03.668240" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x2...</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-08-10T02:10:03.646202" elapsed="0.022124"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.668959" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.177  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe37:112c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:37:11:2c  txqueuelen 1000  (Ethernet)
        RX packets 8822  bytes 56572648 (56.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6640  bytes 1517790 (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 326  bytes 28676 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 326  bytes 28676 (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::508d:1eff:fe48:e649  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 52:8d:1e:48:e6:49  txqueuelen 1000  (Ethernet)
        RX packets 7  bytes 756 (756.0 B)
        RX errors 0  dropped 7  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-08-10T02:10:03.668618" elapsed="0.000435"/>
</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-08-10T02:10:03.672951" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-08-10T02:10:03.721153" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:03.721422" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.635s, 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-08-10T02:10:03.672775" elapsed="0.048717"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.669855" elapsed="0.051733"/>
</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-08-10T02:10:03.722062" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.721645" elapsed="0.000543"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.669830" elapsed="0.052402"/>
</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-08-10T02:10:03.727146" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.722393" elapsed="0.004885"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.728462" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.635s, 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-08-10T02:10:03.727770" elapsed="0.000753"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.727331" elapsed="0.001275"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.722321" elapsed="0.006330"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:03.728728" elapsed="0.000061"/>
</return>
<msg time="2026-08-10T02:10:03.729054" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.635s, 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-08-10T02:10:03.669474" elapsed="0.059700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.729825" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.635s, 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-08-10T02:10:03.729579" elapsed="0.000291"/>
</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-08-10T02:10:03.730422" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.730152" elapsed="0.000329"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.730138" elapsed="0.000366"/>
</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-08-10T02:10:03.730805" elapsed="0.000314"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.730556" elapsed="0.000602"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.730541" elapsed="0.000641"/>
</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-08-10T02:10:03.730109" elapsed="0.001095"/>
</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-08-10T02:10:03.731672" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.731419" elapsed="0.000312"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.731405" elapsed="0.000348"/>
</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-08-10T02:10:03.732049" elapsed="0.000328"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.731805" elapsed="0.000612"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.731790" elapsed="0.000650"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-08-10T02:10:03.731373" elapsed="0.001089"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-08-10T02:10:03.729918" elapsed="0.002572"/>
</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-08-10T02:10:03.622310" elapsed="0.110231"/>
</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-08-10T02:10:03.613017" elapsed="0.119614"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>32</arg>
<arg>12345</arg>
<status status="PASS" start="2026-08-10T02:10:02.597003" elapsed="1.135693"/>
</kw>
<doc>OF1.3 OFPP_LOCAL = 0xfffffffe, /* Local openflow "port". */</doc>
<tag>local</tag>
<status status="PASS" start="2026-08-10T02:10:02.596432" elapsed="1.136374"/>
</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-08-10T02:10:03.736147" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:03.735710" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:03.735692" elapsed="0.000539"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:03.736524" level="INFO">index=3
host=10.30.171.177
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-08-10T02:10:03.736629" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.177
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-08-10T02:10:03.736403" elapsed="0.000252"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.737218" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:10:03.736810" elapsed="0.000454"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:03.737829" 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-08-10T02:10:03.737450" elapsed="0.000404"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:03.738723" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:03.738800" 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-08-10T02:10:03.738436" 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-08-10T02:10:03.738984" elapsed="0.000315"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:03.740150" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:04.074471" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:09:48 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:03.739841" elapsed="0.334710"/>
</kw>
<msg time="2026-08-10T02:10:04.074610" 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-08-10T02:10:03.739486" elapsed="0.335193"/>
</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-08-10T02:10:03.738073" elapsed="0.336687"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:04.075111" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:10:05.275454" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:05.275957" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:05.276062" 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-08-10T02:10:04.074935" elapsed="1.201188"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:05.276758" elapsed="0.000780"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:05.280921" 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-08-10T02:10:05.279711" elapsed="0.001613"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:05.282065" elapsed="0.000046"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:05.281635" elapsed="0.000558"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:05.281563" elapsed="0.000683"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:05.282685" elapsed="0.000079"/>
</return>
<status status="PASS" start="2026-08-10T02:10:05.282419" elapsed="0.000437"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:05.282378" elapsed="0.000547"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:05.283005" 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-08-10T02:10:05.291637" elapsed="0.000376"/>
</kw>
<msg time="2026-08-10T02:10:05.292126" 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-08-10T02:10:05.290152" elapsed="0.002153"/>
</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-08-10T02:10:05.292725" elapsed="0.000049"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:05.293096" elapsed="0.000045"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:10:05.283984" elapsed="0.009328"/>
</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-08-10T02:10:03.735219" elapsed="1.558357"/>
</kw>
<msg time="2026-08-10T02:10:05.293701" 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-08-10T02:10:03.734666" elapsed="1.559171"/>
</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-08-10T02:10:03.734204" elapsed="1.559898"/>
</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-08-10T02:10:05.297255" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:05.296784" elapsed="0.000587"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:05.296758" elapsed="0.000650"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:05.297826" level="INFO">index=3
host=10.30.171.177
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-08-10T02:10:05.298036" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.177
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-08-10T02:10:05.297631" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:05.298799" 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.177" 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-08-10T02:10:05.298296" elapsed="0.000551"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:05.299455" 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-08-10T02:10:05.299008" elapsed="0.000475"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:05.300380" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:05.300475" 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-08-10T02:10:05.300057" elapsed="0.000442"/>
</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-08-10T02:10:05.300665" elapsed="0.000322"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:05.302053" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:05.634925" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:10:04 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:05.301551" elapsed="0.333728"/>
</kw>
<msg time="2026-08-10T02:10:05.635411" 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-08-10T02:10:05.301159" elapsed="0.334370"/>
</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-08-10T02:10:05.299707" elapsed="0.335969"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:05.636402" 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-08-10T02:10:05.669802" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:10:05.670129" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:05.670241" 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-08-10T02:10:05.636023" elapsed="0.034271"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:05.670759" elapsed="0.000543"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:05.672599" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:05.671906" elapsed="0.000790"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:05.673223" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:05.672902" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:05.672841" elapsed="0.000598"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:05.673803" elapsed="0.000073"/>
</return>
<status status="PASS" start="2026-08-10T02:10:05.673562" elapsed="0.000394"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:05.673527" elapsed="0.000483"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:05.674146" elapsed="0.000041"/>
</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-08-10T02:10:05.679290" elapsed="0.000236"/>
</kw>
<msg time="2026-08-10T02:10:05.679589" 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-08-10T02:10:05.678430" elapsed="0.001247"/>
</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-08-10T02:10:05.679909" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:05.680159" 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-08-10T02:10:05.674857" elapsed="0.005421"/>
</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-08-10T02:10:05.296060" elapsed="0.384382"/>
</kw>
<msg time="2026-08-10T02:10:05.680521" 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-08-10T02:10:05.295210" elapsed="0.385401"/>
</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-08-10T02:10:05.294559" elapsed="0.386171"/>
</kw>
<arg>${tools_system}</arg>
<status status="PASS" start="2026-08-10T02:10:03.733906" elapsed="1.946912"/>
</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-08-10T02:10:05.683583" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:05.683259" elapsed="0.000380"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:05.683241" elapsed="0.000421"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:05.683952" level="INFO">index=3
host=10.30.171.177
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-08-10T02:10:05.684063" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.177
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-08-10T02:10:05.683822" elapsed="0.000275"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:05.684667" level="INFO">Attempting to execute command "sudo ovs-vsctl del-manager" on remote system "10.30.171.177" 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-08-10T02:10:05.684254" elapsed="0.000460"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:05.685288" 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-08-10T02:10:05.684873" elapsed="0.000441"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:05.686352" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:05.686436" 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-08-10T02:10:05.685968" elapsed="0.000492"/>
</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-08-10T02:10:05.686631" elapsed="0.000324"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:05.687836" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:06.045352" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:10:05 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:05.687519" elapsed="0.358690"/>
</kw>
<msg time="2026-08-10T02:10:06.046454" 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-08-10T02:10:05.687129" elapsed="0.359458"/>
</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-08-10T02:10:05.685608" elapsed="0.361144"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.047495" level="INFO">Executing command 'sudo ovs-vsctl del-manager'.</msg>
<msg time="2026-08-10T02:10:06.070415" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:06.070675" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:06.070775" 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-08-10T02:10:06.047120" elapsed="0.023705"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:06.071202" elapsed="0.000545"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:06.073022" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:06.072287" elapsed="0.000830"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:06.073707" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:06.073307" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:06.073250" elapsed="0.000629"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:06.074235" elapsed="0.000081"/>
</return>
<status status="PASS" start="2026-08-10T02:10:06.073997" elapsed="0.000432"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:06.073964" elapsed="0.000519"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:06.074558" 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-08-10T02:10:06.082375" elapsed="0.000593"/>
</kw>
<msg time="2026-08-10T02:10:06.083119" 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-08-10T02:10:06.080006" elapsed="0.003304"/>
</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-08-10T02:10:06.083915" elapsed="0.000050"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:06.084292" elapsed="0.000073"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:10:06.075306" elapsed="0.009227"/>
</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-08-10T02:10:05.682719" elapsed="0.402050"/>
</kw>
<msg time="2026-08-10T02:10:06.084892" 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-08-10T02:10:05.681786" elapsed="0.403238"/>
</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-08-10T02:10:05.681113" elapsed="0.404093"/>
</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-08-10T02:10:06.089439" elapsed="0.000166"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:06.088911" elapsed="0.000750"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:06.088869" elapsed="0.000836"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.090131" level="INFO">index=3
host=10.30.171.177
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-08-10T02:10:06.090308" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.177
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-08-10T02:10:06.089929" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:06.091146" level="INFO">Attempting to execute command "sudo /usr/share/openvswitch/scripts/ovs-ctl stop" on remote system "10.30.171.177" 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-08-10T02:10:06.090600" elapsed="0.000613"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.092114" 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-08-10T02:10:06.091542" elapsed="0.000608"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:06.093423" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:06.093533" 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-08-10T02:10:06.092980" elapsed="0.000588"/>
</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-08-10T02:10:06.093792" elapsed="0.000449"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.095624" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:06.464279" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:10:05 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:06.095049" elapsed="0.369498"/>
</kw>
<msg time="2026-08-10T02:10:06.464663" 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-08-10T02:10:06.094545" elapsed="0.370240"/>
</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-08-10T02:10:06.092493" elapsed="0.372451"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.465684" level="INFO">Executing command 'sudo /usr/share/openvswitch/scripts/ovs-ctl stop'.</msg>
<msg time="2026-08-10T02:10:06.630507" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:06.630894" level="INFO">${stdout} =  * Exiting ovs-vswitchd (874)
 * Exiting ovsdb-server (825)</msg>
<msg time="2026-08-10T02:10:06.631007" 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-08-10T02:10:06.465307" elapsed="0.165758"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:06.631651" elapsed="0.000636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:06.633694" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:06.632904" elapsed="0.000895"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:06.634385" elapsed="0.000047"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:06.634004" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:06.633939" elapsed="0.000745"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:06.635089" elapsed="0.000071"/>
</return>
<status status="PASS" start="2026-08-10T02:10:06.634821" elapsed="0.000418"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:06.634782" elapsed="0.000514"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:06.635430" 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-08-10T02:10:06.640433" elapsed="0.000206"/>
</kw>
<msg time="2026-08-10T02:10:06.640701" 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-08-10T02:10:06.639687" elapsed="0.001106"/>
</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-08-10T02:10:06.641023" elapsed="0.000029"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:06.641370" 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-08-10T02:10:06.635980" elapsed="0.005513"/>
</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-08-10T02:10:06.088158" elapsed="0.553464"/>
</kw>
<msg time="2026-08-10T02:10:06.641698" 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-08-10T02:10:06.087005" elapsed="0.554778"/>
</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-08-10T02:10:06.085776" elapsed="0.556122"/>
</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-08-10T02:10:06.644923" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:06.644519" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:06.644494" elapsed="0.000540"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.645443" level="INFO">index=3
host=10.30.171.177
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-08-10T02:10:06.645591" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.177
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-08-10T02:10:06.645245" elapsed="0.000383"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:06.646402" level="INFO">Attempting to execute command "sudo rm -rf /etc/openvswitch/conf.db" on remote system "10.30.171.177" 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-08-10T02:10:06.645840" elapsed="0.000641"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.647302" 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-08-10T02:10:06.646756" elapsed="0.000611"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:06.648258" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:06.648363" 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-08-10T02:10:06.647967" elapsed="0.000422"/>
</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-08-10T02:10:06.648569" elapsed="0.000569"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.650032" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:06.970304" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:10:06 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:06.649700" elapsed="0.320776"/>
</kw>
<msg time="2026-08-10T02:10:06.970558" 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-08-10T02:10:06.649310" elapsed="0.321340"/>
</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-08-10T02:10:06.647623" elapsed="0.323168"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.971309" level="INFO">Executing command 'sudo rm -rf /etc/openvswitch/conf.db'.</msg>
<msg time="2026-08-10T02:10:06.983806" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:06.984066" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:06.984169" 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-08-10T02:10:06.971049" elapsed="0.013174"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:06.984670" elapsed="0.000558"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:06.986455" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:06.985810" 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-08-10T02:10:06.987213" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:06.986917" elapsed="0.000410"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:06.986862" elapsed="0.000559"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:06.987668" elapsed="0.000037"/>
</return>
<status status="PASS" start="2026-08-10T02:10:06.987513" elapsed="0.000238"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:06.987490" elapsed="0.000294"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:06.987833" elapsed="0.000020"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-08-10T02:10:06.992477" elapsed="0.000202"/>
</kw>
<msg time="2026-08-10T02:10:06.992737" 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-08-10T02:10:06.991656" elapsed="0.001166"/>
</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-08-10T02:10:06.993046" elapsed="0.000036"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:06.993321" elapsed="0.000052"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:10:06.988293" elapsed="0.005168"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-08-10T02:10:06.643818" elapsed="0.349772"/>
</kw>
<msg time="2026-08-10T02:10:06.993663" 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-08-10T02:10:06.642991" elapsed="0.350753"/>
</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-08-10T02:10:06.642183" elapsed="0.351669"/>
</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-08-10T02:10:06.996437" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:06.996123" elapsed="0.000371"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:06.996105" elapsed="0.000412"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.996793" level="INFO">index=3
host=10.30.171.177
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-08-10T02:10:06.996896" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.177
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-08-10T02:10:06.996671" elapsed="0.000253"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:06.997471" level="INFO">Attempting to execute command "sudo /usr/share/openvswitch/scripts/ovs-ctl start" on remote system "10.30.171.177" 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-08-10T02:10:06.997076" elapsed="0.000440"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:06.998060" 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-08-10T02:10:06.997673" elapsed="0.000413"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:06.999194" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:06.999271" 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-08-10T02:10:06.998907" 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-08-10T02:10:06.999479" elapsed="0.000315"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:07.000649" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:07.326211" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:10:06 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:07.000318" elapsed="0.326170"/>
</kw>
<msg time="2026-08-10T02:10:07.326585" 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-08-10T02:10:06.999963" elapsed="0.326733"/>
</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-08-10T02:10:06.998539" elapsed="0.328279"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:07.327435" level="INFO">Executing command 'sudo /usr/share/openvswitch/scripts/ovs-ctl start'.</msg>
<msg time="2026-08-10T02:10:07.492435" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:07.492821" 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-08-10T02:10:07.492927" level="INFO">${stderr} = 2026-08-10T02:10:07Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-08-10T02:10:07Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-08-10T02:10: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-08-10T02:10:07.327120" elapsed="0.165864"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:07.493531" elapsed="0.000652"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.495507" level="INFO">2026-08-10T02:10:07Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-08-10T02:10:07Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-08-10T02:10: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-08-10T02:10:07.494736" elapsed="0.000877"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:07.496122" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:07.495801" elapsed="0.000438"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.495740" elapsed="0.000549"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:07.496685" elapsed="0.000070"/>
</return>
<status status="PASS" start="2026-08-10T02:10:07.496446" elapsed="0.000384"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.496410" elapsed="0.000473"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:07.496959" 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-08-10T02:10:07.504044" elapsed="0.000152"/>
</kw>
<msg time="2026-08-10T02:10:07.504240" 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-08-10T02:10:07.502953" 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-08-10T02:10:07.504495" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:07.504657" 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-08-10T02:10:07.497742" elapsed="0.006997"/>
</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-08-10T02:10:06.995642" elapsed="0.509192"/>
</kw>
<msg time="2026-08-10T02:10:07.504890" 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-08-10T02:10:06.994841" elapsed="0.510109"/>
</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-08-10T02:10:06.994132" elapsed="0.510900"/>
</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-08-10T02:10:03.733595" elapsed="3.771502"/>
</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-08-10T02:10:07.513323" elapsed="0.002033"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.511075" elapsed="0.004320"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.511054" elapsed="0.004366"/>
</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-08-10T02:10:07.517551" elapsed="0.002247"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.515476" elapsed="0.004362"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.515459" elapsed="0.004404"/>
</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-08-10T02:10:07.521996" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.519917" elapsed="0.002197"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.519901" elapsed="0.002240"/>
</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-08-10T02:10:07.524290" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.522196" elapsed="0.002170"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.522180" elapsed="0.002211"/>
</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-08-10T02:10:07.510850" elapsed="0.013590"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.525089" 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-08-10T02:10:07.524838" elapsed="0.000297"/>
</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-08-10T02:10:07.527708" elapsed="0.000128"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.525577" elapsed="0.002292"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.525559" 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-08-10T02:10:07.530012" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.527947" elapsed="0.002118"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.527932" elapsed="0.002156"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-08-10T02:10:07.525390" elapsed="0.004745"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:07.532919" level="INFO">Executing command '/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh'.</msg>
<msg time="2026-08-10T02:10:07.548916" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:07.549141" 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-08-10T02:10:07.532788" elapsed="0.016407"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.530672" elapsed="0.018611"/>
</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-08-10T02:10:07.549824" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.549392" elapsed="0.000560"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.530655" elapsed="0.019343"/>
</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-08-10T02:10:07.554918" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.550123" elapsed="0.004951"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.556234" 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-08-10T02:10:07.555571" elapsed="0.000721"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.555127" elapsed="0.001281"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.550088" elapsed="0.006368"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:07.556533" elapsed="0.000063"/>
</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-08-10T02:10:07.530447" elapsed="0.026361"/>
</kw>
<var name="${cmd}">/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh</var>
<status status="PASS" start="2026-08-10T02:10:07.524665" elapsed="0.032226"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-08-10T02:10:07.524499" elapsed="0.032463"/>
</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-08-10T02:10:07.508436" elapsed="0.048644"/>
</kw>
<arg>${test_switch}</arg>
<doc>will execute and command strings stored in switch.cleanup_cmds</doc>
<status status="PASS" start="2026-08-10T02:10:07.505271" elapsed="0.051926"/>
</kw>
<kw name="Close All Connections" owner="SSHLibrary">
<doc>Closes all open connections.</doc>
<status status="PASS" start="2026-08-10T02:10:07.557572" elapsed="0.000476"/>
</kw>
<kw name="Close All Connections" owner="Telnet">
<doc>Closes all open connections and empties the connection cache.</doc>
<status status="PASS" start="2026-08-10T02:10:07.558425" elapsed="0.000267"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:03.733321" elapsed="3.825494"/>
</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-08-10T02:09:46.874423" elapsed="20.684458"/>
</suite>
<status status="PASS" start="2026-08-10T02:09:31.303405" elapsed="36.256865"/>
</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-08-10T02:10:07.664627" 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-08-10T02:10:07.660919" elapsed="0.003743"/>
</kw>
<if>
<branch type="IF" condition="${already_done}">
<return>
<status status="NOT RUN" start="2026-08-10T02:10:07.664887" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:07.664764" elapsed="0.000175"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.664738" elapsed="0.000225"/>
</if>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.665477" 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-08-10T02:10:07.665121" elapsed="0.000400"/>
</kw>
<kw name="Get Variable Value" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.666071" 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-08-10T02:10:07.665753" elapsed="0.000345"/>
</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-08-10T02:10:07.666629" elapsed="0.000295"/>
</kw>
<msg time="2026-08-10T02:10:07.667026" level="INFO">${status} = PASS</msg>
<msg time="2026-08-10T02:10:07.667085" 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-08-10T02:10:07.666264" elapsed="0.000845"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.667670" 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-08-10T02:10:07.667278" elapsed="0.000418"/>
</kw>
<kw name="ClusterManagement__Compute_Derived_Variables" owner="ClusterManagement">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.668746" level="INFO">@{member_index_list} = [ ]</msg>
<var>@{member_index_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:07.668483" elapsed="0.000289"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.669170" level="INFO">@{session_list} = [ ]</msg>
<var>@{session_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:07.668920" elapsed="0.000276"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.669662" 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-08-10T02:10:07.669373" elapsed="0.000316"/>
</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-08-10T02:10:07.672705" elapsed="0.000230"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.673430" level="INFO">${member_ip} = 10.30.170.209</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-08-10T02:10:07.673091" elapsed="0.000366"/>
</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-08-10T02:10:07.673611" elapsed="0.000313"/>
</kw>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.674728" 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-08-10T02:10:07.674431" elapsed="0.000323"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-08-10T02:10:07.674799" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:10:07.674962" 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-08-10T02:10:07.674121" elapsed="0.000867"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:07.675615" level="INFO">Creating Session using : alias=ClusterManagement__session_1, url=http://10.30.170.209:8181, headers={},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777dfc92c50&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-08-10T02:10:07.675157" elapsed="0.000606"/>
</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-08-10T02:10:07.675925" elapsed="0.000198"/>
</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-08-10T02:10:07.672130" elapsed="0.004052"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-08-10T02:10:07.671939" elapsed="0.004287"/>
</iter>
<var>${index}</var>
<value>1</value>
<value>${int_of_members+1}</value>
<status status="PASS" start="2026-08-10T02:10:07.669752" elapsed="0.006508"/>
</for>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.676958" 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-08-10T02:10:07.676440" elapsed="0.000562"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.677548" level="INFO">${ClusterManagement__index_to_ip_mapping} = {1: '10.30.170.209'}</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-08-10T02:10:07.677163" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.678101" 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-08-10T02:10:07.677750" elapsed="0.000393"/>
</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-08-10T02:10:07.668006" elapsed="0.010195"/>
</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-08-10T02:10:07.660602" elapsed="0.017653"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:07.678659" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ec9a4a50&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-08-10T02:10:07.678417" elapsed="0.000412"/>
</kw>
<kw name="Convert To Integer" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.679398" 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-08-10T02:10:07.679043" elapsed="0.000381"/>
</kw>
<kw name="Convert To Integer" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.679909" 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-08-10T02:10:07.679609" elapsed="0.000326"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.680465" 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-08-10T02:10:07.680092" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.680993" 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-08-10T02:10:07.680645" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.683278" 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-08-10T02:10:07.681171" elapsed="0.002134"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.683830" 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-08-10T02:10:07.683480" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.684312" 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-08-10T02:10:07.684017" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.684816" 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-08-10T02:10:07.684528" elapsed="0.000329"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.685303" 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-08-10T02:10:07.685011" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.685813" 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-08-10T02:10:07.685518" elapsed="0.000336"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.686306" 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-08-10T02:10:07.686013" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.686811" 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-08-10T02:10:07.686519" elapsed="0.000332"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.693838" 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-08-10T02:10:07.687005" elapsed="0.006879"/>
</kw>
<doc>Create controller session and set variables.</doc>
<status status="PASS" start="2026-08-10T02:10:07.660186" elapsed="0.033759"/>
</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-08-10T02:10:07.697144" 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-08-10T02:10:07.696756" elapsed="0.000416"/>
</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-08-10T02:10:07.738488" 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-08-10T02:10:07.738095" elapsed="0.000421"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:07.739307" 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-08-10T02:10:07.739023" elapsed="0.000387">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-08-10T02:10:07.739508" 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-08-10T02:10:07.738679" elapsed="0.000853"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.740074" 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-08-10T02:10:07.739695" elapsed="0.000406"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:07.740414" 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-08-10T02:10:07.740572" 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-08-10T02:10:07.740260" elapsed="0.000337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.741035" 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-08-10T02:10:07.740787" 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-08-10T02:10:07.742049" 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-08-10T02:10:07.741795" elapsed="0.000297"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.742531" 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-08-10T02:10:07.742248" elapsed="0.000309"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.743295" 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-08-10T02:10:07.742907" elapsed="0.000414"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-08-10T02:10:07.744355" 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-08-10T02:10:07.743883" elapsed="0.000501"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-08-10T02:10:07.744434" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:07.744587" 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-08-10T02:10:07.743542" elapsed="0.001070"/>
</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-08-10T02:10:07.744761" elapsed="0.000275"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:1</var>
<status status="PASS" start="2026-08-10T02:10:07.742769" elapsed="0.002309"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-08-10T02:10:07.742603" elapsed="0.002510"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:07.745156" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:10:07.745311" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:07.741471" elapsed="0.003880"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.741147" elapsed="0.004237"/>
</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-08-10T02:10:07.745555" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.745409" elapsed="0.000201"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.741128" elapsed="0.004503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.749861" 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-08-10T02:10:07.745771" elapsed="0.004119"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:07.749941" 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-08-10T02:10:07.737486" elapsed="0.012581"/>
</kw>
<msg time="2026-08-10T02:10:07.750123" 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-08-10T02:10:07.725271" elapsed="0.024899"/>
</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-08-10T02:10:07.762065" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:07.773896" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:07.785804" elapsed="0.000032"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:07.786076" elapsed="0.000023"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:07.786255" 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-08-10T02:10:07.786663" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.786516" elapsed="0.000203"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:07.786500" elapsed="0.000243"/>
</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-08-10T02:10:07.786884" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:07.787050" elapsed="0.000019"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:07.787225" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:07.786467" elapsed="0.000812"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:07.786351" elapsed="0.000954"/>
</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-08-10T02:10:07.787466" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:07.787543" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:07.787671" 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-08-10T02:10:07.721164" elapsed="0.066534"/>
</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-08-10T02:10:07.801429" elapsed="0.000393"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.814685" 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-08-10T02:10:07.814282" elapsed="0.000431"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:07.815523" 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-08-10T02:10:07.815231" elapsed="0.000373">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-08-10T02:10:07.815701" 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-08-10T02:10:07.814876" elapsed="0.000849"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.816271" 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-08-10T02:10:07.815890" elapsed="0.000409"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:07.816614" 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-08-10T02:10:07.816786" 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-08-10T02:10:07.816476" elapsed="0.000336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.817213" 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-08-10T02:10:07.816970" elapsed="0.000288"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:07.817647" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.817347" elapsed="0.000357"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.818160" 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-08-10T02:10:07.817873" elapsed="0.000314"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.817729" elapsed="0.000545"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.817314" elapsed="0.000985"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.818903" 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-08-10T02:10:07.818464" elapsed="0.000467"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:07.818980" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:07.819131" 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-08-10T02:10:07.813669" elapsed="0.005505"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.832313" 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-08-10T02:10:07.831939" elapsed="0.000419"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:07.833057" 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-08-10T02:10:07.832850" elapsed="0.000269">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-08-10T02:10:07.833211" 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-08-10T02:10:07.832519" elapsed="0.000716"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.833794" 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-08-10T02:10:07.833416" elapsed="0.000405"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:07.834110" 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-08-10T02:10:07.834236" 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-08-10T02:10:07.833978" elapsed="0.000283"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.834675" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:07.834432" elapsed="0.000286"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:07.835071" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.834783" elapsed="0.000346"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.835646" 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-08-10T02:10:07.835353" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.835154" elapsed="0.000554"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.834765" elapsed="0.000964"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.836294" 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-08-10T02:10:07.835874" elapsed="0.000447"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:07.836388" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:07.836541" 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-08-10T02:10:07.831292" elapsed="0.005273"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.849425" 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-08-10T02:10:07.849028" elapsed="0.000430"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:07.850201" 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-08-10T02:10:07.849944" elapsed="0.000321">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-08-10T02:10:07.850377" 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-08-10T02:10:07.849616" elapsed="0.000787"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.850947" 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-08-10T02:10:07.850565" elapsed="0.000409"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:07.851291" 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-08-10T02:10:07.851451" 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-08-10T02:10:07.851131" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.851883" 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-08-10T02:10:07.851642" elapsed="0.000288"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:07.852280" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.851995" elapsed="0.000360"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.852815" 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-08-10T02:10:07.852527" elapsed="0.000314"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.852381" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.851977" elapsed="0.000920"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.853637" 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-08-10T02:10:07.853040" elapsed="0.000626"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:07.853713" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:07.853866" 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-08-10T02:10:07.848486" elapsed="0.005406"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.854294" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:07.854054" elapsed="0.000265"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.854862" 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-08-10T02:10:07.854501" elapsed="0.000387"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:07.855598" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:07.855305" elapsed="0.000351"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.855286" elapsed="0.000394"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.856174" 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-08-10T02:10:07.855824" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.856958" 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-08-10T02:10:07.856371" 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-08-10T02:10:07.857140" elapsed="0.000214"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-08-10T02:10:07.855254" elapsed="0.002171"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.858027" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.857786" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.857770" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.858793" 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-08-10T02:10:07.858440" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.859593" 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-08-10T02:10:07.858975" 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-08-10T02:10:07.859777" elapsed="0.000184"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-08-10T02:10:07.857739" 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-08-10T02:10:07.860433" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.860179" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.860164" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.861174" 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-08-10T02:10:07.860825" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.861946" 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-08-10T02:10:07.861371" 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-08-10T02:10:07.862128" elapsed="0.000181"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-08-10T02:10:07.860134" 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-08-10T02:10:07.862784" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.862547" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.862532" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.863576" 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-08-10T02:10:07.863199" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.864351" 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-08-10T02:10:07.863758" 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-08-10T02:10:07.864535" elapsed="0.000181"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-08-10T02:10:07.862502" 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-08-10T02:10:07.865169" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.864933" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.864918" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.865920" 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-08-10T02:10:07.865572" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.866689" 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-08-10T02:10:07.866100" 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-08-10T02:10:07.866872" elapsed="0.000181"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-08-10T02:10:07.864889" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.867558" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.867295" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.867280" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.868289" 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-08-10T02:10:07.867944" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.869070" 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-08-10T02:10:07.868484" 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-08-10T02:10:07.869290" elapsed="0.000202"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-08-10T02:10:07.867249" 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-08-10T02:10:07.869949" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.869712" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.869697" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.870708" 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-08-10T02:10:07.870355" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.871509" 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-08-10T02:10:07.870888" 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-08-10T02:10:07.871692" elapsed="0.000183"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-08-10T02:10:07.869668" 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-08-10T02:10:07.872328" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.872095" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.872080" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.873083" 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-08-10T02:10:07.872736" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.873857" 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-08-10T02:10:07.873264" 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-08-10T02:10:07.874038" elapsed="0.000180"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-08-10T02:10:07.872050" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.874812" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.874576" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.874561" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.875582" 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-08-10T02:10:07.875213" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.876364" 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-08-10T02:10:07.875763" 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-08-10T02:10:07.876549" elapsed="0.000182"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-08-10T02:10:07.874530" 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-08-10T02:10:07.877185" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.876949" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.876934" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.877936" 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-08-10T02:10:07.877587" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.878716" 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-08-10T02:10:07.878118" 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-08-10T02:10:07.878896" elapsed="0.000183"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-08-10T02:10:07.876905" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.879587" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.879330" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.879315" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.880322" 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-08-10T02:10:07.879973" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.881140" 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-08-10T02:10:07.880560" 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-08-10T02:10:07.881322" elapsed="0.000202"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-08-10T02:10:07.879280" 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-08-10T02:10:07.881976" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.881742" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.881726" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.882730" 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-08-10T02:10:07.882379" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.883528" 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-08-10T02:10:07.882909" 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-08-10T02:10:07.883713" elapsed="0.000182"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-08-10T02:10:07.881697" 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-08-10T02:10:07.884364" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.884113" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.884098" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.885100" 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-08-10T02:10:07.884753" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.885872" 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-08-10T02:10:07.885279" 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-08-10T02:10:07.886053" elapsed="0.000182"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-08-10T02:10:07.884069" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.886707" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.886472" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.886456" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.887496" 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-08-10T02:10:07.887093" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.888247" 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-08-10T02:10:07.887675" 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-08-10T02:10:07.888446" elapsed="0.000182"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-08-10T02:10:07.886426" 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-08-10T02:10:07.889075" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.888844" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.888828" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.889824" 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-08-10T02:10:07.889478" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.890596" 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-08-10T02:10:07.890001" 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-08-10T02:10:07.890775" elapsed="0.000179"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-08-10T02:10:07.888800" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.892268" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.891992" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.891977" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.893032" 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-08-10T02:10:07.892680" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.893803" 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-08-10T02:10:07.893210" 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-08-10T02:10:07.893984" elapsed="0.000181"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-08-10T02:10:07.891946" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.894633" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.894398" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.894383" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.895433" 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-08-10T02:10:07.895021" elapsed="0.000439"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.896187" 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-08-10T02:10:07.895614" 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-08-10T02:10:07.896386" elapsed="0.000184"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-08-10T02:10:07.894352" 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-08-10T02:10:07.897030" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.896794" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.896779" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.897782" 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-08-10T02:10:07.897432" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.898555" 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-08-10T02:10:07.897962" 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-08-10T02:10:07.898738" elapsed="0.000182"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-08-10T02:10:07.896749" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.899420" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.899137" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.899122" elapsed="0.000545"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.900155" 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-08-10T02:10:07.899808" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.900930" 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-08-10T02:10:07.900348" 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-08-10T02:10:07.901110" elapsed="0.000183"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-08-10T02:10:07.899093" 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-08-10T02:10:07.901766" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.901532" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.901517" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.902520" 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-08-10T02:10:07.902151" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.906357" 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-08-10T02:10:07.902699" elapsed="0.003704"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.906635" elapsed="0.000194"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-08-10T02:10:07.901487" elapsed="0.005380"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.907302" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.907055" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.907039" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.908089" 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-08-10T02:10:07.907721" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.908882" 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-08-10T02:10:07.908268" 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-08-10T02:10:07.909064" elapsed="0.000183"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-08-10T02:10:07.907010" 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-08-10T02:10:07.909728" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.909494" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.909478" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.910487" 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-08-10T02:10:07.910115" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.911272" 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-08-10T02:10:07.910668" 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-08-10T02:10:07.911476" elapsed="0.000190"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-08-10T02:10:07.909448" 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-08-10T02:10:07.912255" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.912017" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.912002" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.913017" 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-08-10T02:10:07.912664" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.913795" 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-08-10T02:10:07.913196" 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-08-10T02:10:07.913979" elapsed="0.000186"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-08-10T02:10:07.911971" 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-08-10T02:10:07.914641" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.914404" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.914388" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.915431" 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-08-10T02:10:07.915029" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.916197" 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-08-10T02:10:07.915620" 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-08-10T02:10:07.916397" elapsed="0.000184"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-08-10T02:10:07.914356" 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-08-10T02:10:07.917032" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.916798" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.916783" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.917786" 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-08-10T02:10:07.917435" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.918606" 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-08-10T02:10:07.918006" 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-08-10T02:10:07.918788" elapsed="0.000182"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-08-10T02:10:07.916753" 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-08-10T02:10:07.919475" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.919189" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.919173" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.920219" 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-08-10T02:10:07.919869" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.921005" 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-08-10T02:10:07.920424" 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-08-10T02:10:07.921186" elapsed="0.000200"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-08-10T02:10:07.919144" 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-08-10T02:10:07.921837" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.921603" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.921588" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.922603" 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-08-10T02:10:07.922223" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.923388" 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-08-10T02:10:07.922783" 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-08-10T02:10:07.923571" elapsed="0.000188"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-08-10T02:10:07.921558" 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-08-10T02:10:07.924212" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.923977" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.923961" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.924968" 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-08-10T02:10:07.924619" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.925745" 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-08-10T02:10:07.925148" 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-08-10T02:10:07.925925" elapsed="0.000181"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-08-10T02:10:07.923932" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.926578" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.926325" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.926307" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.927363" 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-08-10T02:10:07.926966" elapsed="0.000425"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.928124" 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-08-10T02:10:07.927546" 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-08-10T02:10:07.928304" elapsed="0.000199"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-08-10T02:10:07.926278" 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-08-10T02:10:07.929077" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.928840" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.928825" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.929878" 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-08-10T02:10:07.929525" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.930651" 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-08-10T02:10:07.930059" 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-08-10T02:10:07.930832" elapsed="0.000181"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-08-10T02:10:07.928794" 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-08-10T02:10:07.931515" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.931257" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.931236" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.932255" 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-08-10T02:10:07.931906" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.933031" 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-08-10T02:10:07.932453" 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-08-10T02:10:07.933212" elapsed="0.000199"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-08-10T02:10:07.931185" 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-08-10T02:10:07.933861" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.933628" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.933613" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.934617" 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-08-10T02:10:07.934244" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.935418" 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-08-10T02:10:07.934797" 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-08-10T02:10:07.935600" elapsed="0.000181"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-08-10T02:10:07.933584" 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-08-10T02:10:07.936231" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.935997" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.935982" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.936985" 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-08-10T02:10:07.936637" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.937764" 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-08-10T02:10:07.937164" 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-08-10T02:10:07.937946" elapsed="0.000180"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-08-10T02:10:07.935952" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.938618" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.938380" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.938361" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.939381" 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-08-10T02:10:07.939004" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.940145" 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-08-10T02:10:07.939563" 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-08-10T02:10:07.940326" elapsed="0.000200"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-08-10T02:10:07.938300" 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-08-10T02:10:07.941035" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.940799" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.940784" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.941794" 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-08-10T02:10:07.941440" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.942571" 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-08-10T02:10:07.941972" 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-08-10T02:10:07.942754" elapsed="0.000181"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-08-10T02:10:07.940755" 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-08-10T02:10:07.943434" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.943151" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.943136" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.944178" 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-08-10T02:10:07.943825" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.944957" 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-08-10T02:10:07.944377" 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-08-10T02:10:07.945138" elapsed="0.000322"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-08-10T02:10:07.943108" 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-08-10T02:10:07.945912" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.945676" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.945661" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.946663" 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-08-10T02:10:07.946296" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.947468" 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-08-10T02:10:07.946842" 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-08-10T02:10:07.947649" elapsed="0.000183"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-08-10T02:10:07.945632" 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-08-10T02:10:07.948284" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.948050" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.948035" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.949036" 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-08-10T02:10:07.948688" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.949809" 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-08-10T02:10:07.949214" 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-08-10T02:10:07.949991" elapsed="0.000181"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-08-10T02:10:07.948006" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.950641" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.950405" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.950390" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.951427" 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-08-10T02:10:07.951024" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.952179" 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-08-10T02:10:07.951605" 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-08-10T02:10:07.952457" elapsed="0.000186"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-08-10T02:10:07.950360" 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-08-10T02:10:07.953095" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.952861" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.952846" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.953851" 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-08-10T02:10:07.953501" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.954626" 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-08-10T02:10:07.954029" 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-08-10T02:10:07.954807" elapsed="0.000183"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-08-10T02:10:07.952816" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.955477" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.955207" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.955192" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.956218" 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-08-10T02:10:07.955870" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.957006" 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-08-10T02:10:07.956431" 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-08-10T02:10:07.957188" elapsed="0.000209"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-08-10T02:10:07.955163" 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-08-10T02:10:07.957849" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.957617" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.957602" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.958605" 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-08-10T02:10:07.958235" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.959410" 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-08-10T02:10:07.958784" 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-08-10T02:10:07.959593" elapsed="0.000184"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-08-10T02:10:07.957573" 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-08-10T02:10:07.960235" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.960002" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.959985" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.960991" 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-08-10T02:10:07.960643" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.961894" 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-08-10T02:10:07.961170" elapsed="0.000753"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.962076" elapsed="0.000182"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-08-10T02:10:07.959956" 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-08-10T02:10:07.962725" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.962492" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.962477" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.963506" 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-08-10T02:10:07.963109" elapsed="0.000460"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.964316" 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-08-10T02:10:07.963728" 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-08-10T02:10:07.964520" elapsed="0.000181"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-08-10T02:10:07.962448" 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-08-10T02:10:07.965153" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.964919" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.964904" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.965907" 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-08-10T02:10:07.965559" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.966678" 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-08-10T02:10:07.966086" 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-08-10T02:10:07.966859" elapsed="0.000180"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-08-10T02:10:07.964875" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.967538" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.967259" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.967240" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.968279" 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-08-10T02:10:07.967928" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.969058" 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-08-10T02:10:07.968479" 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-08-10T02:10:07.969241" elapsed="0.000201"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-08-10T02:10:07.967211" 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-08-10T02:10:07.969896" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.969662" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.969647" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.970649" 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-08-10T02:10:07.970280" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.971432" 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-08-10T02:10:07.970825" 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-08-10T02:10:07.971612" elapsed="0.000181"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-08-10T02:10:07.969618" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.972253" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.972019" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.972002" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.973007" 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-08-10T02:10:07.972660" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.973785" 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-08-10T02:10:07.973183" 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-08-10T02:10:07.973963" elapsed="0.000180"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-08-10T02:10:07.971972" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.974654" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.974378" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.974362" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.975446" 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-08-10T02:10:07.975048" elapsed="0.000430"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.976224" 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-08-10T02:10:07.975633" 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-08-10T02:10:07.976428" elapsed="0.000185"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-08-10T02:10:07.974315" elapsed="0.002337"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:07.977068" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.976833" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.976818" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.977944" 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-08-10T02:10:07.977474" elapsed="0.000497"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.978727" 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-08-10T02:10:07.978124" 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-08-10T02:10:07.978908" elapsed="0.000180"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-08-10T02:10:07.976789" 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-08-10T02:10:07.979595" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.979308" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.979292" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.980367" 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-08-10T02:10:07.979996" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.981125" 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-08-10T02:10:07.980549" 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-08-10T02:10:07.981307" elapsed="0.000201"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-08-10T02:10:07.979261" 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-08-10T02:10:07.981959" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.981725" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.981710" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.982712" 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-08-10T02:10:07.982363" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.983526" 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-08-10T02:10:07.982890" 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-08-10T02:10:07.983708" elapsed="0.000183"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-08-10T02:10:07.981680" 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-08-10T02:10:07.984362" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.984108" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.984093" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.985098" 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-08-10T02:10:07.984753" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.985874" 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-08-10T02:10:07.985275" 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-08-10T02:10:07.986099" elapsed="0.000186"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-08-10T02:10:07.984063" 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-08-10T02:10:07.986776" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.986535" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.986519" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.987565" 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-08-10T02:10:07.987170" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.988326" 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-08-10T02:10:07.987747" 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-08-10T02:10:07.988535" elapsed="0.000184"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-08-10T02:10:07.986488" 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-08-10T02:10:07.989169" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.988935" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.988921" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.989921" 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-08-10T02:10:07.989574" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.990702" 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-08-10T02:10:07.990097" 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-08-10T02:10:07.990881" elapsed="0.000180"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-08-10T02:10:07.988891" 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-08-10T02:10:07.991561" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.991277" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.991260" elapsed="0.000556"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.992305" 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-08-10T02:10:07.991958" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.993085" 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-08-10T02:10:07.992506" 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-08-10T02:10:07.993274" elapsed="0.000201"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-08-10T02:10:07.991232" 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-08-10T02:10:07.993928" elapsed="0.000312"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.993694" elapsed="0.000585"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.993677" elapsed="0.000626"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.994818" 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-08-10T02:10:07.994467" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.995628" 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-08-10T02:10:07.995001" 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-08-10T02:10:07.995811" elapsed="0.000184"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-08-10T02:10:07.993648" 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-08-10T02:10:07.996470" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.996213" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.996197" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.997207" 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-08-10T02:10:07.996858" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.998037" 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-08-10T02:10:07.997443" 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-08-10T02:10:07.998220" elapsed="0.000201"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-08-10T02:10:07.996168" 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-08-10T02:10:07.998873" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:07.998639" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:07.998624" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:07.999681" 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-08-10T02:10:07.999256" elapsed="0.000452"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.000464" 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-08-10T02:10:07.999863" 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-08-10T02:10:08.000644" elapsed="0.000180"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-08-10T02:10:07.998595" 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-08-10T02:10:08.001276" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.001043" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.001027" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.002033" 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-08-10T02:10:08.001686" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.002805" 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-08-10T02:10:08.002210" 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-08-10T02:10:08.002987" elapsed="0.000180"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-08-10T02:10:08.000998" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.003654" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.003405" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.003390" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.004412" 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-08-10T02:10:08.004042" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.005165" 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-08-10T02:10:08.004591" 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-08-10T02:10:08.005363" elapsed="0.000194"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-08-10T02:10:08.003358" 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-08-10T02:10:08.006007" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.005775" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.005759" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.006762" 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-08-10T02:10:08.006413" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.007537" 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-08-10T02:10:08.006940" 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-08-10T02:10:08.007749" elapsed="0.000187"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-08-10T02:10:08.005730" 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-08-10T02:10:08.008420" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.008160" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.008140" elapsed="0.000565"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.009204" 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-08-10T02:10:08.008850" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.009991" 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-08-10T02:10:08.009407" 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-08-10T02:10:08.010173" elapsed="0.000204"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-08-10T02:10:08.008111" 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-08-10T02:10:08.010942" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.010595" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.010580" elapsed="0.000612"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.012793" 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-08-10T02:10:08.011336" elapsed="0.001488"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.013593" 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-08-10T02:10:08.012993" 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-08-10T02:10:08.013775" elapsed="0.000182"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-08-10T02:10:08.010551" elapsed="0.003443"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.014425" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.014173" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.014158" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.015159" 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-08-10T02:10:08.014813" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.016033" 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-08-10T02:10:08.015359" 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-08-10T02:10:08.016225" elapsed="0.000213"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-08-10T02:10:08.014129" elapsed="0.002347"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.016889" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.016656" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.016641" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.017647" 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-08-10T02:10:08.017276" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.018421" 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-08-10T02:10:08.017825" 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-08-10T02:10:08.018611" elapsed="0.000182"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-08-10T02:10:08.016612" 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-08-10T02:10:08.019241" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.019008" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.018994" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.020016" 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-08-10T02:10:08.019646" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.020799" 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-08-10T02:10:08.020195" 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-08-10T02:10:08.020978" elapsed="0.000181"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-08-10T02:10:08.018965" 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-08-10T02:10:08.021674" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.021439" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.021424" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.022430" 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-08-10T02:10:08.022062" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.023187" 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-08-10T02:10:08.022608" 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-08-10T02:10:08.023396" elapsed="0.000184"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-08-10T02:10:08.021393" 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-08-10T02:10:08.024073" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.023829" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.023781" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.024842" 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-08-10T02:10:08.024491" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.025618" 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-08-10T02:10:08.025019" 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-08-10T02:10:08.025797" elapsed="0.000182"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-08-10T02:10:08.023752" 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-08-10T02:10:08.026447" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.026195" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.026179" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.027180" 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-08-10T02:10:08.026833" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.027962" 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-08-10T02:10:08.027373" 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-08-10T02:10:08.028141" elapsed="0.000188"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-08-10T02:10:08.026150" 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-08-10T02:10:08.028916" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.028675" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.028549" elapsed="0.000613"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.029671" 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-08-10T02:10:08.029303" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.030444" 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-08-10T02:10:08.029849" 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-08-10T02:10:08.030625" elapsed="0.000180"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-08-10T02:10:08.028520" 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-08-10T02:10:08.031249" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.031017" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.031002" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.032036" 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-08-10T02:10:08.031657" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.032817" 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-08-10T02:10:08.032215" 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-08-10T02:10:08.033036" elapsed="0.000181"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-08-10T02:10:08.030974" 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-08-10T02:10:08.033699" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.033454" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.033438" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.034455" 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-08-10T02:10:08.034085" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.035209" 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-08-10T02:10:08.034635" 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-08-10T02:10:08.035411" elapsed="0.000183"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-08-10T02:10:08.033408" 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-08-10T02:10:08.036056" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.035808" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.035794" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.036821" 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-08-10T02:10:08.036472" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.037590" 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-08-10T02:10:08.037000" 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-08-10T02:10:08.037769" elapsed="0.000182"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-08-10T02:10:08.035765" 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-08-10T02:10:08.038420" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.038165" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.038150" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.039153" 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-08-10T02:10:08.038808" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.039924" 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-08-10T02:10:08.039329" 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-08-10T02:10:08.040136" elapsed="0.000183"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-08-10T02:10:08.038121" 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-08-10T02:10:08.040792" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.040556" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.040540" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.041548" 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-08-10T02:10:08.041176" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.042303" 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-08-10T02:10:08.041727" 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-08-10T02:10:08.042503" elapsed="0.000181"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-08-10T02:10:08.040511" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.043133" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.042900" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.042884" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.043890" 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-08-10T02:10:08.043541" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.044734" 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-08-10T02:10:08.044126" 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-08-10T02:10:08.044914" elapsed="0.000182"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-08-10T02:10:08.042855" 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-08-10T02:10:08.045683" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.045442" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.045296" elapsed="0.000635"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.046441" 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-08-10T02:10:08.046072" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.047194" 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-08-10T02:10:08.046620" 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-08-10T02:10:08.047394" elapsed="0.000184"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-08-10T02:10:08.045267" 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-08-10T02:10:08.048094" elapsed="0.000214"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.047792" elapsed="0.000577"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.047778" elapsed="0.000619"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.048898" 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-08-10T02:10:08.048544" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.049676" 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-08-10T02:10:08.049077" 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-08-10T02:10:08.049856" elapsed="0.000181"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-08-10T02:10:08.047749" 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-08-10T02:10:08.050507" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.050252" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.050238" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.051238" 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-08-10T02:10:08.050893" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.052012" 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-08-10T02:10:08.051437" 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-08-10T02:10:08.052229" elapsed="0.000207"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-08-10T02:10:08.050209" 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-08-10T02:10:08.052883" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.052651" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.052636" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.053645" 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-08-10T02:10:08.053266" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.054417" 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-08-10T02:10:08.053822" 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-08-10T02:10:08.054599" elapsed="0.000181"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-08-10T02:10:08.052607" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.055264" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.054994" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.054979" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.056024" 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-08-10T02:10:08.055675" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.056847" 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-08-10T02:10:08.056230" 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-08-10T02:10:08.057030" elapsed="0.000181"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-08-10T02:10:08.054950" 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-08-10T02:10:08.057682" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.057450" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.057436" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.058434" 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-08-10T02:10:08.058065" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.059193" 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-08-10T02:10:08.058612" 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-08-10T02:10:08.059395" elapsed="0.000184"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-08-10T02:10:08.057405" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.060029" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.059795" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.059779" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.060835" 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-08-10T02:10:08.060481" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.061608" 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-08-10T02:10:08.061013" 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-08-10T02:10:08.061788" elapsed="0.000180"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-08-10T02:10:08.059750" 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-08-10T02:10:08.062563" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.062301" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.062172" elapsed="0.000639"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.063299" 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-08-10T02:10:08.062953" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.064079" 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-08-10T02:10:08.063500" 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-08-10T02:10:08.064297" elapsed="0.000209"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-08-10T02:10:08.062143" 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-08-10T02:10:08.064969" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.064729" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.064714" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.065739" 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-08-10T02:10:08.065379" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.066528" 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-08-10T02:10:08.065923" 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-08-10T02:10:08.066748" elapsed="0.000188"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-08-10T02:10:08.064684" 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-08-10T02:10:08.067414" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.067155" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.067140" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.068168" 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-08-10T02:10:08.067810" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.068998" 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-08-10T02:10:08.068402" 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-08-10T02:10:08.069184" elapsed="0.000207"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-08-10T02:10:08.067110" 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-08-10T02:10:08.069850" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.069613" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.069599" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.070627" 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-08-10T02:10:08.070242" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.071414" 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-08-10T02:10:08.070809" 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-08-10T02:10:08.071599" elapsed="0.000186"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-08-10T02:10:08.069568" 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-08-10T02:10:08.072246" elapsed="0.000239"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.072009" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.071991" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.073041" 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-08-10T02:10:08.072692" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.073812" 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-08-10T02:10:08.073217" 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-08-10T02:10:08.073993" elapsed="0.000180"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-08-10T02:10:08.071961" 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-08-10T02:10:08.074647" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.074412" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.074395" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.075397" 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-08-10T02:10:08.075031" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.076152" 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-08-10T02:10:08.075576" 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-08-10T02:10:08.076381" elapsed="0.000190"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-08-10T02:10:08.074365" 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-08-10T02:10:08.077025" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.076790" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.076773" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.077781" 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-08-10T02:10:08.077431" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.078607" 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-08-10T02:10:08.078003" 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-08-10T02:10:08.078788" elapsed="0.000180"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-08-10T02:10:08.076744" 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-08-10T02:10:08.079560" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.079295" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.079170" elapsed="0.000638"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.080307" 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-08-10T02:10:08.079952" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.081126" 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-08-10T02:10:08.080534" 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-08-10T02:10:08.081310" elapsed="0.000207"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-08-10T02:10:08.079141" 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-08-10T02:10:08.081979" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.081738" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.081723" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.082758" 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-08-10T02:10:08.082392" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.083551" 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-08-10T02:10:08.082940" 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-08-10T02:10:08.083735" elapsed="0.000186"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-08-10T02:10:08.081693" 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-08-10T02:10:08.084433" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.084144" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.084130" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.085190" 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-08-10T02:10:08.084832" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.085985" 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-08-10T02:10:08.085392" 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-08-10T02:10:08.086168" elapsed="0.000205"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-08-10T02:10:08.084098" elapsed="0.002313"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.086833" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.086594" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.086580" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.087603" 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-08-10T02:10:08.087221" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.088392" 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-08-10T02:10:08.087784" 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-08-10T02:10:08.088610" elapsed="0.000187"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-08-10T02:10:08.086550" 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-08-10T02:10:08.089257" elapsed="0.000214"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.089018" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.089003" elapsed="0.000569"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.090080" 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-08-10T02:10:08.089720" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.090881" 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-08-10T02:10:08.090262" 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-08-10T02:10:08.091066" elapsed="0.000185"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-08-10T02:10:08.088973" 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-08-10T02:10:08.091732" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.091492" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.091477" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.092543" 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-08-10T02:10:08.092126" elapsed="0.000444"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.093317" 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-08-10T02:10:08.092728" 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-08-10T02:10:08.093526" elapsed="0.000184"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-08-10T02:10:08.091447" 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-08-10T02:10:08.094171" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.093933" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.093917" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.094948" 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-08-10T02:10:08.094587" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.095743" 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-08-10T02:10:08.095129" 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-08-10T02:10:08.095926" elapsed="0.000184"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-08-10T02:10:08.093887" 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-08-10T02:10:08.097189" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.096938" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.096316" elapsed="0.001150"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.097969" 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-08-10T02:10:08.097611" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.098762" 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-08-10T02:10:08.098150" 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-08-10T02:10:08.098946" elapsed="0.000186"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-08-10T02:10:08.096286" elapsed="0.002884"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.099618" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.099376" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.099359" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.100390" 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-08-10T02:10:08.100013" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.101200" 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-08-10T02:10:08.100609" 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-08-10T02:10:08.101405" elapsed="0.000188"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-08-10T02:10:08.099307" elapsed="0.002360"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-08-10T02:10:07.854943" elapsed="0.246757"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.103026" 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-08-10T02:10:08.101860" elapsed="0.001195"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.103117" elapsed="0.000054"/>
</return>
<msg time="2026-08-10T02:10:08.103313" 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-08-10T02:10:07.800492" elapsed="0.302865"/>
</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-08-10T02:10:08.104807" 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-08-10T02:10:08.104476" elapsed="0.000416">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-08-10T02:10:08.104992" 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-08-10T02:10:08.104104" elapsed="0.000913"/>
</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-08-10T02:10:08.105368" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.105090" elapsed="0.000338"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.105956" 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-08-10T02:10:08.105654" elapsed="0.000329"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.105452" elapsed="0.000566"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.105072" elapsed="0.000969"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.108448" 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-08-10T02:10:08.106195" elapsed="0.002280"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:08.108528" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:08.108724" 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-08-10T02:10:08.103742" elapsed="0.005008"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.110331" 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-08-10T02:10:08.110072" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.110799" 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-08-10T02:10:08.110554" elapsed="0.000748"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.111733" 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-08-10T02:10:08.111477" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.112180" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:08.111932" elapsed="0.000292"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:08.113117" 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-08-10T02:10:08.112897" elapsed="0.000247"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-08-10T02:10:08.113497" 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-08-10T02:10:08.113297" elapsed="0.000241"/>
</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-08-10T02:10:08.113727" elapsed="0.000229"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.114447" 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-08-10T02:10:08.114141" elapsed="0.000357"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-08-10T02:10:08.114545" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:10:08.114720" 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-08-10T02:10:08.112450" elapsed="0.002299"/>
</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-08-10T02:10:08.168507" level="INFO">POST Request : url=http://10.30.170.209: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-08-10T02:10:08.168928" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node0betrc7ibj0851jcdopl66sv1g12.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:10:08 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Location': 'http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=5000', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:08.169235" 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-08-10T02:10:08.117621" elapsed="0.051682"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.115014" elapsed="0.054445"/>
</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-08-10T02:10:08.169911" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.169528" elapsed="0.000545"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.114807" elapsed="0.055317"/>
</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-08-10T02:10:08.176642" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:08.172765" elapsed="0.003937"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.172158" elapsed="0.004593"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.172115" elapsed="0.004671"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.180258" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:08.177171" elapsed="0.003151"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.176862" elapsed="0.003532"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.176840" elapsed="0.003588"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.181257" 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-08-10T02:10:08.180681" elapsed="0.000659"/>
</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-08-10T02:10:08.181870" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.181508" elapsed="0.000442"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.182617" 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-08-10T02:10:08.182221" elapsed="0.000423"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.181982" elapsed="0.000698"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.181476" elapsed="0.001226"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.183244" 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-08-10T02:10:08.182873" elapsed="0.000398"/>
</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-08-10T02:10:08.183630" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.183360" elapsed="0.000329"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.184184" 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-08-10T02:10:08.183888" elapsed="0.000323"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.183712" elapsed="0.000534"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.183322" elapsed="0.000945"/>
</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-08-10T02:10:08.184459" elapsed="0.000362"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:10:08.185504" 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-08-10T02:10:08.184987" elapsed="0.000548"/>
</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-08-10T02:10:08.185696" elapsed="0.002239"/>
</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-08-10T02:10:08.171042" elapsed="0.016957"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:08.188179" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:08.188072" elapsed="0.000152"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.188054" elapsed="0.000192"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:10:08.190840" 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-08-10T02:10:08.188412" elapsed="0.002455"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:10:08.190916" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:08.191073" 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-08-10T02:10:08.109097" elapsed="0.082001"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.191207" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:08.191386" 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-08-10T02:10:07.710509" elapsed="0.480903"/>
</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-08-10T02:10:08.191765" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.191523" elapsed="0.000311"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.191506" elapsed="0.000352"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.191891" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-group-1</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-08-10T02:10:07.707990" elapsed="0.484024"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:10:07.696602" elapsed="0.495460"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.192730" 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-08-10T02:10:08.192305" elapsed="0.000453"/>
</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-08-10T02:10:08.235184" 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-08-10T02:10:08.234804" elapsed="0.000411"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.236021" 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-08-10T02:10:08.235733" elapsed="0.000370">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-08-10T02:10:08.236199" 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-08-10T02:10:08.235399" elapsed="0.000824"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.236787" 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-08-10T02:10:08.236405" elapsed="0.000409"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.237110" 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-08-10T02:10:08.237271" 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-08-10T02:10:08.236972" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.237719" 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-08-10T02:10:08.237476" elapsed="0.000290"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.238794" 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-08-10T02:10:08.238536" elapsed="0.000302"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.239258" 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-08-10T02:10:08.238996" elapsed="0.000288"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.240051" 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-08-10T02:10:08.239677" elapsed="0.000400"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-08-10T02:10:08.241305" 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-08-10T02:10:08.240821" elapsed="0.000568"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-08-10T02:10:08.241445" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:10:08.241604" 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-08-10T02:10:08.240266" elapsed="0.001363"/>
</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-08-10T02:10:08.241782" elapsed="0.000337"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:2</var>
<status status="PASS" start="2026-08-10T02:10:08.239543" elapsed="0.002625"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-08-10T02:10:08.239360" elapsed="0.002850"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:08.242263" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:10:08.242457" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:08.238180" elapsed="0.004303"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.237872" elapsed="0.004643"/>
</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-08-10T02:10:08.242687" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.242540" elapsed="0.000201"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.237815" elapsed="0.004947"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.243473" 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-08-10T02:10:08.242900" elapsed="0.000601"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.243550" 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-08-10T02:10:08.234158" elapsed="0.009516"/>
</kw>
<msg time="2026-08-10T02:10:08.243729" 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-08-10T02:10:08.221805" elapsed="0.021970"/>
</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-08-10T02:10:08.255974" 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-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-08-10T02:10:08.268031" 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/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-08-10T02:10:08.280106" 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-08-10T02:10:08.280304" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:08.280496" 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-08-10T02:10:08.280859" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.280716" elapsed="0.000198"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:08.280702" elapsed="0.000271"/>
</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-08-10T02:10:08.281116" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:08.281279" 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-08-10T02:10:08.281460" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:08.280673" elapsed="0.000840"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:08.280571" elapsed="0.000968"/>
</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-08-10T02:10:08.281683" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:08.281757" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:08.281873" 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-08-10T02:10:08.217539" elapsed="0.064359"/>
</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-08-10T02:10:08.292684" elapsed="0.000338"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.306127" 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-08-10T02:10:08.305752" elapsed="0.000404"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.306961" 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-08-10T02:10:08.306715" elapsed="0.000323">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-08-10T02:10:08.307133" 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-08-10T02:10:08.306315" elapsed="0.000843"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.307726" 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-08-10T02:10:08.307322" elapsed="0.000432"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.308045" 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-08-10T02:10:08.308173" 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-08-10T02:10:08.307912" elapsed="0.000286"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.308619" 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-08-10T02:10:08.308371" 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-08-10T02:10:08.309017" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.308729" elapsed="0.000346"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.309566" 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-08-10T02:10:08.309243" elapsed="0.000349"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.309099" elapsed="0.000527"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.308712" elapsed="0.000936"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.310220" 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-08-10T02:10:08.309793" elapsed="0.000455"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.310296" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:08.310479" 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-08-10T02:10:08.305113" elapsed="0.005391"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.323989" 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-08-10T02:10:08.323614" elapsed="0.000403"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.324735" 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-08-10T02:10:08.324526" 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-08-10T02:10:08.324891" 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-08-10T02:10:08.324177" elapsed="0.000738"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.325477" 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-08-10T02:10:08.325076" elapsed="0.000429"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.325794" 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-08-10T02:10:08.325915" 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-08-10T02:10:08.325662" elapsed="0.000278"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.326339" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:08.326093" 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-08-10T02:10:08.326805" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.326466" elapsed="0.000407"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.327403" 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-08-10T02:10:08.327080" elapsed="0.000350"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.326903" elapsed="0.000563"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.326447" elapsed="0.001040"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.328053" 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-08-10T02:10:08.327632" elapsed="0.000448"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.328129" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:08.328279" 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-08-10T02:10:08.322929" elapsed="0.005375"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.341439" 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-08-10T02:10:08.341047" elapsed="0.000421"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.342160" 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-08-10T02:10:08.341955" elapsed="0.000268">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-08-10T02:10:08.342315" 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-08-10T02:10:08.341627" elapsed="0.000730"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.343002" 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-08-10T02:10:08.342524" elapsed="0.000511"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.343403" 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-08-10T02:10:08.343531" 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-08-10T02:10:08.343229" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.343957" 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-08-10T02:10:08.343714" 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-08-10T02:10:08.344377" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.344071" elapsed="0.000366"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.344898" 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-08-10T02:10:08.344607" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.344461" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.344053" elapsed="0.000929"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.345718" 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-08-10T02:10:08.345126" elapsed="0.000621"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.345797" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:08.345951" 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-08-10T02:10:08.340502" elapsed="0.005476"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.346396" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:08.346137" elapsed="0.000286"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.346979" 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-08-10T02:10:08.346579" elapsed="0.000431"/>
</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-08-10T02:10:08.347690" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.347455" elapsed="0.000291"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.347440" elapsed="0.000330"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.348260" 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-08-10T02:10:08.347909" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.349209" 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-08-10T02:10:08.348458" elapsed="0.000780"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.349414" elapsed="0.000195"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-08-10T02:10:08.347409" 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-08-10T02:10:08.350061" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.349825" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.349810" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.350831" 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-08-10T02:10:08.350478" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.351703" 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-08-10T02:10:08.351094" 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-08-10T02:10:08.351887" elapsed="0.000186"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-08-10T02:10:08.349781" 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-08-10T02:10:08.352543" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.352289" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.352274" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.353276" 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-08-10T02:10:08.352928" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.354056" 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-08-10T02:10:08.353481" 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-08-10T02:10:08.354236" elapsed="0.000201"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-08-10T02:10:08.352245" 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-08-10T02:10:08.354885" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.354652" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.354637" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.355655" 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-08-10T02:10:08.355287" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.356421" 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-08-10T02:10:08.355833" 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-08-10T02:10:08.356602" elapsed="0.000179"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-08-10T02:10:08.354609" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.357225" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.356993" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.356978" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.357988" 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-08-10T02:10:08.357643" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.358756" 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-08-10T02:10:08.358167" 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-08-10T02:10:08.358936" elapsed="0.000236"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-08-10T02:10:08.356949" 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-08-10T02:10:08.359697" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.359450" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.359433" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.360463" 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-08-10T02:10:08.360085" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.361211" 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-08-10T02:10:08.360642" 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-08-10T02:10:08.361411" elapsed="0.000182"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-08-10T02:10:08.359397" 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-08-10T02:10:08.362041" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.361808" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.361793" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.362836" 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-08-10T02:10:08.362485" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.363630" 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-08-10T02:10:08.363028" 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-08-10T02:10:08.363812" elapsed="0.000180"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-08-10T02:10:08.361764" 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-08-10T02:10:08.364460" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.364208" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.364194" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.365202" 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-08-10T02:10:08.364856" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.366097" 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-08-10T02:10:08.365398" 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-08-10T02:10:08.366278" elapsed="0.000200"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-08-10T02:10:08.364165" 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-08-10T02:10:08.366927" elapsed="0.000234"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.366694" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.366679" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.367739" 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-08-10T02:10:08.367387" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.368519" 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-08-10T02:10:08.367917" 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-08-10T02:10:08.368700" elapsed="0.000181"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-08-10T02:10:08.366650" 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-08-10T02:10:08.369328" elapsed="0.000218"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.369095" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.369080" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.370099" 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-08-10T02:10:08.369752" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.370877" 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-08-10T02:10:08.370277" 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-08-10T02:10:08.371058" elapsed="0.000220"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-08-10T02:10:08.369050" 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-08-10T02:10:08.371807" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.371562" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.371537" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.372570" 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-08-10T02:10:08.372196" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.373324" 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-08-10T02:10:08.372750" 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-08-10T02:10:08.373526" elapsed="0.000180"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-08-10T02:10:08.371503" 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-08-10T02:10:08.374194" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.373960" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.373945" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.374950" 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-08-10T02:10:08.374601" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.375818" 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-08-10T02:10:08.375170" 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-08-10T02:10:08.376003" elapsed="0.000182"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-08-10T02:10:08.373916" 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-08-10T02:10:08.376659" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.376424" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.376409" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.377410" 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-08-10T02:10:08.377044" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.378163" 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-08-10T02:10:08.377589" 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-08-10T02:10:08.378361" elapsed="0.000184"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-08-10T02:10:08.376378" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.378994" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.378760" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.378745" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.379761" 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-08-10T02:10:08.379416" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.380536" 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-08-10T02:10:08.379940" 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-08-10T02:10:08.380716" elapsed="0.000180"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-08-10T02:10:08.378716" 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-08-10T02:10:08.381362" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.381111" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.381096" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.382223" 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-08-10T02:10:08.381758" elapsed="0.000492"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.383004" 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-08-10T02:10:08.382424" 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-08-10T02:10:08.383188" elapsed="0.000248"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-08-10T02:10:08.381067" elapsed="0.002408"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.383889" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.383652" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.383637" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.384644" 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-08-10T02:10:08.384273" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.385418" 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-08-10T02:10:08.384823" 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-08-10T02:10:08.385636" elapsed="0.000182"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-08-10T02:10:08.383608" 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-08-10T02:10:08.386266" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.386032" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.386017" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.387020" 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-08-10T02:10:08.386676" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.387807" 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-08-10T02:10:08.387198" 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-08-10T02:10:08.387987" elapsed="0.000180"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-08-10T02:10:08.385989" 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-08-10T02:10:08.388633" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.388399" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.388384" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.389378" 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-08-10T02:10:08.389015" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.390127" 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-08-10T02:10:08.389557" 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-08-10T02:10:08.390304" elapsed="0.000200"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-08-10T02:10:08.388340" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.390953" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.390720" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.390705" elapsed="0.000488"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.395883" 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-08-10T02:10:08.395526" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.396665" 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-08-10T02:10:08.396062" 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-08-10T02:10:08.396847" elapsed="0.000180"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-08-10T02:10:08.390676" elapsed="0.006388"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.397494" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.397243" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.397228" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.398222" 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-08-10T02:10:08.397877" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.398999" 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-08-10T02:10:08.398420" 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-08-10T02:10:08.399178" elapsed="0.000233"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-08-10T02:10:08.397199" 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-08-10T02:10:08.399868" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.399634" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.399619" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.400618" 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-08-10T02:10:08.400251" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.401441" 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-08-10T02:10:08.400837" 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-08-10T02:10:08.401623" elapsed="0.000182"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-08-10T02:10:08.399590" 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-08-10T02:10:08.402326" elapsed="0.000449"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.402023" elapsed="0.000795"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.402007" elapsed="0.000836"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.403368" 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-08-10T02:10:08.402990" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.404228" 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-08-10T02:10:08.403594" 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-08-10T02:10:08.404431" elapsed="0.000184"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-08-10T02:10:08.401977" 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-08-10T02:10:08.405075" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.404837" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.404822" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.405826" 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-08-10T02:10:08.405480" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.406600" 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-08-10T02:10:08.406004" 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-08-10T02:10:08.406780" elapsed="0.000181"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-08-10T02:10:08.404792" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.407428" elapsed="0.000251"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.407175" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.407161" elapsed="0.000591"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.408261" 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-08-10T02:10:08.407910" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.409043" 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-08-10T02:10:08.408460" 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-08-10T02:10:08.409222" elapsed="0.000201"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-08-10T02:10:08.407132" 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-08-10T02:10:08.409869" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.409637" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.409623" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.410620" 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-08-10T02:10:08.410251" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.411393" 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-08-10T02:10:08.410798" 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-08-10T02:10:08.411613" elapsed="0.000214"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-08-10T02:10:08.409594" 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-08-10T02:10:08.412331" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.412053" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.412038" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.413097" 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-08-10T02:10:08.412746" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.413877" 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-08-10T02:10:08.413277" 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-08-10T02:10:08.414058" elapsed="0.000180"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-08-10T02:10:08.412008" 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-08-10T02:10:08.414706" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.414474" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.414459" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.415457" 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-08-10T02:10:08.415090" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.416262" 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-08-10T02:10:08.415682" 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-08-10T02:10:08.416463" elapsed="0.000182"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-08-10T02:10:08.414429" 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-08-10T02:10:08.417093" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.416860" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.416845" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.417845" 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-08-10T02:10:08.417499" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.418616" 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-08-10T02:10:08.418022" 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-08-10T02:10:08.418797" elapsed="0.000179"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-08-10T02:10:08.416816" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.419576" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.419191" elapsed="0.000648"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.419176" elapsed="0.000692"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.420398" 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-08-10T02:10:08.420023" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.421161" 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-08-10T02:10:08.420584" 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-08-10T02:10:08.421361" elapsed="0.000184"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-08-10T02:10:08.419148" 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-08-10T02:10:08.421994" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.421760" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.421746" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.422743" 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-08-10T02:10:08.422395" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.423511" 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-08-10T02:10:08.422921" 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-08-10T02:10:08.423760" elapsed="0.000184"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-08-10T02:10:08.421717" 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-08-10T02:10:08.424413" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.424159" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.424145" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.425145" 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-08-10T02:10:08.424799" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.425918" 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-08-10T02:10:08.425322" 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-08-10T02:10:08.426097" elapsed="0.000181"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-08-10T02:10:08.424116" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.426746" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.426513" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.426498" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.427493" 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-08-10T02:10:08.427129" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.428261" 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-08-10T02:10:08.427687" 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-08-10T02:10:08.428460" elapsed="0.000183"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-08-10T02:10:08.426469" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.429091" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.428857" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.428841" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.429845" 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-08-10T02:10:08.429498" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.430615" 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-08-10T02:10:08.430023" 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-08-10T02:10:08.430795" elapsed="0.000180"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-08-10T02:10:08.428813" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.431441" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.431189" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.431173" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.432290" 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-08-10T02:10:08.431903" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.433069" 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-08-10T02:10:08.432494" 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-08-10T02:10:08.433249" elapsed="0.000200"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-08-10T02:10:08.431144" 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-08-10T02:10:08.433897" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.433665" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.433650" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.434654" 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-08-10T02:10:08.434286" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.435482" 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-08-10T02:10:08.434872" 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-08-10T02:10:08.435664" elapsed="0.000223"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-08-10T02:10:08.433620" 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-08-10T02:10:08.436502" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.436239" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.436115" elapsed="0.000638"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.437245" 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-08-10T02:10:08.436896" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.438019" 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-08-10T02:10:08.437444" 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-08-10T02:10:08.438201" elapsed="0.000202"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-08-10T02:10:08.436085" 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-08-10T02:10:08.438859" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.438625" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.438611" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.439612" 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-08-10T02:10:08.439242" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.440485" 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-08-10T02:10:08.439848" 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-08-10T02:10:08.440668" elapsed="0.000182"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-08-10T02:10:08.438582" 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-08-10T02:10:08.441298" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.441066" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.441051" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.442050" 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-08-10T02:10:08.441704" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.442826" 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-08-10T02:10:08.442228" 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-08-10T02:10:08.443006" elapsed="0.000180"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-08-10T02:10:08.441022" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.443655" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.443421" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.443406" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.444492" 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-08-10T02:10:08.444107" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.445246" 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-08-10T02:10:08.444671" 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-08-10T02:10:08.445451" elapsed="0.000183"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-08-10T02:10:08.443376" 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-08-10T02:10:08.446082" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.445849" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.445835" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.446874" 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-08-10T02:10:08.446524" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.447648" 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-08-10T02:10:08.447053" 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-08-10T02:10:08.447870" elapsed="0.000195"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-08-10T02:10:08.445805" 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-08-10T02:10:08.448542" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.448284" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.448268" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.449273" 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-08-10T02:10:08.448927" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.450046" 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-08-10T02:10:08.449473" 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-08-10T02:10:08.450226" elapsed="0.000203"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-08-10T02:10:08.448239" 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-08-10T02:10:08.450878" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.450646" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.450631" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.451640" 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-08-10T02:10:08.451263" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.452440" 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-08-10T02:10:08.451818" 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-08-10T02:10:08.452620" elapsed="0.000179"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-08-10T02:10:08.450603" 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-08-10T02:10:08.453374" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.453119" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.452995" elapsed="0.000628"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.454111" 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-08-10T02:10:08.453765" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.454885" 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-08-10T02:10:08.454290" 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-08-10T02:10:08.455065" elapsed="0.000180"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-08-10T02:10:08.452967" 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-08-10T02:10:08.455715" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.455481" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.455466" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.456584" 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-08-10T02:10:08.456180" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.457361" 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-08-10T02:10:08.456767" 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-08-10T02:10:08.457545" elapsed="0.000183"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-08-10T02:10:08.455437" elapsed="0.002364"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.458219" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.457983" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.457968" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.458981" 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-08-10T02:10:08.458632" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.459782" 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-08-10T02:10:08.459158" 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-08-10T02:10:08.459979" elapsed="0.000186"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-08-10T02:10:08.457939" 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-08-10T02:10:08.460636" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.460400" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.460385" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.461387" 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-08-10T02:10:08.461020" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.462149" 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-08-10T02:10:08.461575" 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-08-10T02:10:08.462328" elapsed="0.000203"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-08-10T02:10:08.460336" 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-08-10T02:10:08.462976" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.462744" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.462729" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.463729" 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-08-10T02:10:08.463380" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.464565" 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-08-10T02:10:08.463910" 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-08-10T02:10:08.464746" elapsed="0.000182"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-08-10T02:10:08.462701" 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-08-10T02:10:08.465392" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.465141" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.465126" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.466121" 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-08-10T02:10:08.465777" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.466896" 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-08-10T02:10:08.466297" 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-08-10T02:10:08.467075" elapsed="0.000180"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-08-10T02:10:08.465097" 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-08-10T02:10:08.467723" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.467488" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.467474" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.468523" 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-08-10T02:10:08.468139" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.469279" 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-08-10T02:10:08.468703" 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-08-10T02:10:08.469544" elapsed="0.000183"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-08-10T02:10:08.467444" 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-08-10T02:10:08.471125" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.470878" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.469929" elapsed="0.001465"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.471886" 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-08-10T02:10:08.471538" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.472765" 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-08-10T02:10:08.472110" 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-08-10T02:10:08.472948" elapsed="0.000183"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-08-10T02:10:08.469900" elapsed="0.003268"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.473604" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.473367" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.473336" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.474338" 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-08-10T02:10:08.473988" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.475107" 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-08-10T02:10:08.474532" 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-08-10T02:10:08.475287" elapsed="0.000210"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-08-10T02:10:08.473303" 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-08-10T02:10:08.475950" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.475713" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.475698" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.476790" 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-08-10T02:10:08.476434" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.477568" 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-08-10T02:10:08.476970" 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-08-10T02:10:08.477748" elapsed="0.000182"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-08-10T02:10:08.475669" 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-08-10T02:10:08.478396" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.478145" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.478130" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.479131" 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-08-10T02:10:08.478784" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.479907" 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-08-10T02:10:08.479309" 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-08-10T02:10:08.480088" elapsed="0.000249"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-08-10T02:10:08.478101" 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-08-10T02:10:08.480844" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.480606" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.480590" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.481601" 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-08-10T02:10:08.481230" elapsed="0.000438"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.482429" 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-08-10T02:10:08.481824" 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-08-10T02:10:08.482610" elapsed="0.000184"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-08-10T02:10:08.480560" 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-08-10T02:10:08.483247" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.483012" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.482997" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.484002" 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-08-10T02:10:08.483655" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.484807" 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-08-10T02:10:08.484205" 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-08-10T02:10:08.484990" elapsed="0.000183"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-08-10T02:10:08.482968" 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-08-10T02:10:08.485645" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.485410" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.485395" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.486397" 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-08-10T02:10:08.486031" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.487154" 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-08-10T02:10:08.486578" 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-08-10T02:10:08.487338" elapsed="0.000196"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-08-10T02:10:08.485364" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.488109" elapsed="0.000249"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.487868" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.487738" elapsed="0.000697"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.488978" 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-08-10T02:10:08.488613" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.489763" 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-08-10T02:10:08.489159" 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-08-10T02:10:08.489944" elapsed="0.000183"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-08-10T02:10:08.487708" 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-08-10T02:10:08.490601" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.490363" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.490329" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.491338" 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-08-10T02:10:08.490986" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.492111" 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-08-10T02:10:08.491534" 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-08-10T02:10:08.492308" elapsed="0.000198"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-08-10T02:10:08.490300" 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-08-10T02:10:08.492996" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.492724" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.492709" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.493756" 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-08-10T02:10:08.493405" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.494532" 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-08-10T02:10:08.493936" 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-08-10T02:10:08.494713" elapsed="0.000182"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-08-10T02:10:08.492680" 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-08-10T02:10:08.495364" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.495112" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.495097" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.496096" 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-08-10T02:10:08.495751" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.496967" 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-08-10T02:10:08.496305" 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-08-10T02:10:08.497150" elapsed="0.000180"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-08-10T02:10:08.495068" 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-08-10T02:10:08.497806" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.497571" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.497556" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.498556" 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-08-10T02:10:08.498189" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.499303" 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-08-10T02:10:08.498734" 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-08-10T02:10:08.499504" elapsed="0.000180"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-08-10T02:10:08.497527" 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-08-10T02:10:08.500130" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.499897" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.499883" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.500919" 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-08-10T02:10:08.500563" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.501688" 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-08-10T02:10:08.501096" 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-08-10T02:10:08.501867" elapsed="0.000181"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-08-10T02:10:08.499854" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.502514" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.502261" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.502245" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.503243" 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-08-10T02:10:08.502899" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.504016" 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-08-10T02:10:08.503441" 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-08-10T02:10:08.504231" elapsed="0.000230"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-08-10T02:10:08.502216" 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-08-10T02:10:08.505036" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.504793" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.504667" elapsed="0.000616"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.505799" 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-08-10T02:10:08.505447" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.506575" 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-08-10T02:10:08.505980" 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-08-10T02:10:08.506759" elapsed="0.000181"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-08-10T02:10:08.504637" 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-08-10T02:10:08.507406" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.507154" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.507140" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.508136" 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-08-10T02:10:08.507792" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.509016" 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-08-10T02:10:08.508314" elapsed="0.000730"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.509199" elapsed="0.000202"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-08-10T02:10:08.507111" 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-08-10T02:10:08.509859" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.509624" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.509610" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.510612" 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-08-10T02:10:08.510243" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.511382" 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-08-10T02:10:08.510790" 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-08-10T02:10:08.511572" elapsed="0.000180"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-08-10T02:10:08.509580" 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-08-10T02:10:08.512199" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.511964" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.511949" elapsed="0.000547"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.513052" 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-08-10T02:10:08.512677" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.513832" 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-08-10T02:10:08.513233" 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-08-10T02:10:08.514012" elapsed="0.000181"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-08-10T02:10:08.511920" 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-08-10T02:10:08.514665" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.514427" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.514412" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.515415" 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-08-10T02:10:08.515050" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.516215" 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-08-10T02:10:08.515633" 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-08-10T02:10:08.516419" elapsed="0.000214"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-08-10T02:10:08.514381" 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-08-10T02:10:08.517086" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.516850" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.516836" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.517842" 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-08-10T02:10:08.517494" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.518618" 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-08-10T02:10:08.518021" 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-08-10T02:10:08.518798" elapsed="0.000180"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-08-10T02:10:08.516806" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.519441" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.519190" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.519175" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.520170" 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-08-10T02:10:08.519825" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.520969" 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-08-10T02:10:08.520367" 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-08-10T02:10:08.521148" elapsed="0.000179"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-08-10T02:10:08.519146" 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-08-10T02:10:08.521918" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.521679" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.521554" elapsed="0.000607"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.522665" 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-08-10T02:10:08.522301" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.523429" 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-08-10T02:10:08.522842" 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-08-10T02:10:08.523610" elapsed="0.000181"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-08-10T02:10:08.521525" 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-08-10T02:10:08.524237" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.524004" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.523990" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.524999" 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-08-10T02:10:08.524652" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.525772" 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-08-10T02:10:08.525177" 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-08-10T02:10:08.525951" elapsed="0.000180"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-08-10T02:10:08.523960" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.526602" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.526365" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.526331" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.527400" 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-08-10T02:10:08.527029" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.528154" 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-08-10T02:10:08.527579" 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-08-10T02:10:08.528339" elapsed="0.000199"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-08-10T02:10:08.526301" 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-08-10T02:10:08.529097" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.528818" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.528801" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.529856" 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-08-10T02:10:08.529508" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.530670" 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-08-10T02:10:08.530033" 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-08-10T02:10:08.530848" elapsed="0.000182"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-08-10T02:10:08.528766" 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-08-10T02:10:08.531499" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.531244" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.531228" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.532234" 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-08-10T02:10:08.531886" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.533033" 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-08-10T02:10:08.532432" 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-08-10T02:10:08.533214" elapsed="0.000206"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-08-10T02:10:08.531200" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.533876" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.533643" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.533628" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.534626" 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-08-10T02:10:08.534259" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.535391" 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-08-10T02:10:08.534803" 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-08-10T02:10:08.535571" elapsed="0.000181"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-08-10T02:10:08.533599" elapsed="0.002189"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.536197" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.535964" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.535949" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.537036" 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-08-10T02:10:08.536603" elapsed="0.000464"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.537836" 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-08-10T02:10:08.537233" 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-08-10T02:10:08.538016" elapsed="0.000180"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-08-10T02:10:08.535921" 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-08-10T02:10:08.538818" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.538576" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.538454" elapsed="0.000610"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.539576" 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-08-10T02:10:08.539206" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.540329" 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-08-10T02:10:08.539756" 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-08-10T02:10:08.540531" elapsed="0.000198"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-08-10T02:10:08.538424" 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-08-10T02:10:08.541180" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.540946" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.540931" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.541931" 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-08-10T02:10:08.541586" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.542697" 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-08-10T02:10:08.542108" 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-08-10T02:10:08.542876" elapsed="0.000181"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-08-10T02:10:08.540902" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.543522" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.543269" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.543255" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.544248" 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-08-10T02:10:08.543906" elapsed="0.000368"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.545050" 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-08-10T02:10:08.544443" 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-08-10T02:10:08.545229" elapsed="0.000201"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-08-10T02:10:08.543226" 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-08-10T02:10:08.545878" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.545645" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.545631" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.546635" 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-08-10T02:10:08.546261" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.547408" 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-08-10T02:10:08.546813" 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-08-10T02:10:08.547589" elapsed="0.000180"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-08-10T02:10:08.545602" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.548222" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.547988" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.547972" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.549003" 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-08-10T02:10:08.548629" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.549778" 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-08-10T02:10:08.549181" 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-08-10T02:10:08.549996" elapsed="0.000183"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-08-10T02:10:08.547942" 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-08-10T02:10:08.550648" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.550414" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.550399" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.551396" 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-08-10T02:10:08.551030" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.552146" 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-08-10T02:10:08.551575" 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-08-10T02:10:08.552325" elapsed="0.000201"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-08-10T02:10:08.550369" 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-08-10T02:10:08.553007" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.552740" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.552725" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.553768" 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-08-10T02:10:08.553421" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.554544" 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-08-10T02:10:08.553946" 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-08-10T02:10:08.554723" elapsed="0.000179"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-08-10T02:10:08.552696" 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-08-10T02:10:08.555482" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.555223" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.555100" elapsed="0.000627"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.556214" 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-08-10T02:10:08.555868" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.556998" 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-08-10T02:10:08.556411" 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-08-10T02:10:08.557179" elapsed="0.000201"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-08-10T02:10:08.555072" elapsed="0.002347"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.557829" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.557597" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.557582" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.558582" 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-08-10T02:10:08.558214" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.559332" 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-08-10T02:10:08.558760" 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-08-10T02:10:08.559536" elapsed="0.000181"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-08-10T02:10:08.557554" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.560160" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.559928" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.559914" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.560944" 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-08-10T02:10:08.560565" elapsed="0.000457"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.561852" 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-08-10T02:10:08.561212" 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-08-10T02:10:08.562034" elapsed="0.000182"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-08-10T02:10:08.559885" 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-08-10T02:10:08.562682" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.562450" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.562436" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.563442" 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-08-10T02:10:08.563065" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.564195" 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-08-10T02:10:08.563621" 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-08-10T02:10:08.564395" elapsed="0.000181"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-08-10T02:10:08.562406" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.565057" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.564791" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.564776" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.565814" 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-08-10T02:10:08.565466" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.566597" 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-08-10T02:10:08.565991" 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-08-10T02:10:08.566778" elapsed="0.000181"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-08-10T02:10:08.564747" 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-08-10T02:10:08.567427" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.567174" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.567158" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.568159" 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-08-10T02:10:08.567813" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.568933" 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-08-10T02:10:08.568339" 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-08-10T02:10:08.569187" elapsed="0.000238"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-08-10T02:10:08.567129" 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-08-10T02:10:08.569876" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.569641" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.569627" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.570632" 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-08-10T02:10:08.570261" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.571405" 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-08-10T02:10:08.570810" 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-08-10T02:10:08.571584" elapsed="0.000180"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-08-10T02:10:08.569598" elapsed="0.002203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.572381" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.572087" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.571964" elapsed="0.000665"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.573135" 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-08-10T02:10:08.572772" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.573906" 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-08-10T02:10:08.573314" 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-08-10T02:10:08.574087" elapsed="0.000181"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-08-10T02:10:08.571935" 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-08-10T02:10:08.574738" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.574503" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.574489" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.575489" 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-08-10T02:10:08.575123" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.576238" 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-08-10T02:10:08.575667" 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-08-10T02:10:08.576436" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-08-10T02:10:08.574459" elapsed="0.002196"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.577110" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.576832" elapsed="0.000564"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.576817" elapsed="0.000609"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.577933" 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-08-10T02:10:08.577580" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.578709" 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-08-10T02:10:08.578111" 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-08-10T02:10:08.578888" elapsed="0.000181"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-08-10T02:10:08.576788" 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-08-10T02:10:08.579540" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.579283" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.579268" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.580282" 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-08-10T02:10:08.579934" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.581056" 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-08-10T02:10:08.580481" 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-08-10T02:10:08.581258" elapsed="0.000204"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-08-10T02:10:08.579240" 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-08-10T02:10:08.581915" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.581681" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.581664" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.582668" 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-08-10T02:10:08.582301" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.583442" 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-08-10T02:10:08.582847" 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-08-10T02:10:08.583657" elapsed="0.000182"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-08-10T02:10:08.581635" 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-08-10T02:10:08.584288" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.584054" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.584039" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.585045" 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-08-10T02:10:08.584699" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.585932" 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-08-10T02:10:08.585289" 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-08-10T02:10:08.586115" elapsed="0.000183"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-08-10T02:10:08.584010" 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-08-10T02:10:08.586778" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.586545" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.586530" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.587533" 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-08-10T02:10:08.587163" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.588288" 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-08-10T02:10:08.587712" 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-08-10T02:10:08.588489" elapsed="0.000180"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-08-10T02:10:08.586492" 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-08-10T02:10:08.589267" elapsed="0.000236"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.588994" elapsed="0.000553"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.588871" elapsed="0.000705"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.590074" 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-08-10T02:10:08.589724" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.590854" 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-08-10T02:10:08.590253" 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-08-10T02:10:08.591037" elapsed="0.000182"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-08-10T02:10:08.588843" 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-08-10T02:10:08.591692" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.591456" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.591441" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.592446" 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-08-10T02:10:08.592079" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.593230" 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-08-10T02:10:08.592627" 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-08-10T02:10:08.593476" elapsed="0.000193"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-08-10T02:10:08.591411" elapsed="0.002295"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-08-10T02:10:08.347074" elapsed="0.246662"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.595020" 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-08-10T02:10:08.593892" elapsed="0.001156"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.595145" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:10:08.595328" 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-08-10T02:10:08.291809" elapsed="0.303564"/>
</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-08-10T02:10:08.596737" 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-08-10T02:10:08.596465" elapsed="0.000349">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-08-10T02:10:08.596910" 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-08-10T02:10:08.596102" elapsed="0.000833"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:08.597276" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.597004" elapsed="0.000354"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.597884" 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-08-10T02:10:08.597588" elapsed="0.000323"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.597383" elapsed="0.000562"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.596987" elapsed="0.000980"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.600330" 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-08-10T02:10:08.598119" elapsed="0.002254"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:08.600424" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:08.600578" 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-08-10T02:10:08.595751" elapsed="0.004851"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.602226" 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-08-10T02:10:08.601969" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.602679" 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-08-10T02:10:08.602441" elapsed="0.000730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.603597" 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-08-10T02:10:08.603324" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.604030" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:08.603792" elapsed="0.000280"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:08.604898" 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-08-10T02:10:08.604697" elapsed="0.000227"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-08-10T02:10:08.605247" 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-08-10T02:10:08.605075" 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-08-10T02:10:08.605477" elapsed="0.000232"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.606113" 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-08-10T02:10:08.605867" elapsed="0.000289"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-08-10T02:10:08.606197" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:08.606371" 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-08-10T02:10:08.604273" elapsed="0.002125"/>
</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-08-10T02:10:08.636790" level="INFO">POST Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.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-08-10T02:10:08.637189" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=5000', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:08.637489" 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-08-10T02:10:08.608642" elapsed="0.028910"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.606624" elapsed="0.031064"/>
</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-08-10T02:10:08.638117" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.637749" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.606455" elapsed="0.031859"/>
</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-08-10T02:10:08.646126" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:08.640740" elapsed="0.005482"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.640210" elapsed="0.006092"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.640170" elapsed="0.006231"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.648940" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:08.646773" elapsed="0.002211"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.646531" elapsed="0.002488"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.646504" elapsed="0.002539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.649641" 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-08-10T02:10:08.649232" elapsed="0.000436"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:08.650010" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.649755" elapsed="0.000311"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.650590" 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-08-10T02:10:08.650262" elapsed="0.000355"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.650090" elapsed="0.000562"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.649723" elapsed="0.000950"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.651200" 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-08-10T02:10:08.650842" elapsed="0.000384"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:08.651565" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.651294" elapsed="0.000328"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.652108" 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-08-10T02:10:08.651817" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.651645" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.651277" elapsed="0.000913"/>
</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-08-10T02:10:08.652359" elapsed="0.000347"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:10:08.653154" 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-08-10T02:10:08.652870" elapsed="0.000310"/>
</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-08-10T02:10:08.653337" elapsed="0.002255"/>
</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-08-10T02:10:08.639175" elapsed="0.016480"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:08.655836" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:08.655727" elapsed="0.000154"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.655710" elapsed="0.000193"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:10:08.658309" 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-08-10T02:10:08.656047" elapsed="0.002289"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:10:08.658403" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:10:08.658563" 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-08-10T02:10:08.600931" elapsed="0.057657"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.658693" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:08.658848" 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-08-10T02:10:08.206684" elapsed="0.452189"/>
</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-08-10T02:10:08.659221" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.658978" elapsed="0.000311"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.658962" elapsed="0.000350"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.659363" 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-08-10T02:10:08.204035" elapsed="0.455454"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-08-10T02:10:08.192161" elapsed="0.467381"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.660190" 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-08-10T02:10:08.659790" elapsed="0.000427"/>
</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-08-10T02:10:08.702080" 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-08-10T02:10:08.701704" elapsed="0.000405"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.702996" 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-08-10T02:10:08.702748" elapsed="0.000324">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-08-10T02:10:08.703166" 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-08-10T02:10:08.702327" elapsed="0.000863"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.703760" 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-08-10T02:10:08.703373" elapsed="0.000415"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.704083" 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-08-10T02:10:08.704238" 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-08-10T02:10:08.703948" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.704680" 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-08-10T02:10:08.704436" 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-08-10T02:10:08.705673" 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-08-10T02:10:08.705419" elapsed="0.000297"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.706129" 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-08-10T02:10:08.705871" elapsed="0.000284"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.706916" 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-08-10T02:10:08.706554" elapsed="0.000388"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-08-10T02:10:08.707974" 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-08-10T02:10:08.707512" elapsed="0.000488"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-08-10T02:10:08.708086" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:10:08.708244" 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-08-10T02:10:08.707128" elapsed="0.001141"/>
</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-08-10T02:10:08.708442" elapsed="0.000283"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:3</var>
<status status="PASS" start="2026-08-10T02:10:08.706413" elapsed="0.002354"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-08-10T02:10:08.706208" elapsed="0.002594"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:08.708846" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:08.709003" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:08.705081" elapsed="0.003947"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.704791" elapsed="0.004269"/>
</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-08-10T02:10:08.709231" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.709084" elapsed="0.000201"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.704773" elapsed="0.004532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.710001" 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-08-10T02:10:08.709464" elapsed="0.000564"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.710076" 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-08-10T02:10:08.701067" elapsed="0.009132"/>
</kw>
<msg time="2026-08-10T02:10:08.710256" 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-08-10T02:10:08.688982" elapsed="0.021353"/>
</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-08-10T02:10:08.722506" 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-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-08-10T02:10:08.734326" elapsed="0.000045"/>
</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-08-10T02:10:08.746202" 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-08-10T02:10:08.746415" elapsed="0.000030"/>
</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-08-10T02:10:08.746598" 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-08-10T02:10:08.746982" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.746835" elapsed="0.000201"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:08.746820" 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-08-10T02:10:08.747197" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:08.747419" 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-08-10T02:10:08.747586" elapsed="0.000019"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:08.746793" elapsed="0.000845"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:08.746693" elapsed="0.000971"/>
</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-08-10T02:10:08.747808" elapsed="0.000019"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:08.747882" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:08.747996" 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-08-10T02:10:08.684733" elapsed="0.063289"/>
</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-08-10T02:10:08.758653" elapsed="0.000367"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.771915" 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-08-10T02:10:08.771542" elapsed="0.000401"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.772655" 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-08-10T02:10:08.772447" elapsed="0.000271">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-08-10T02:10:08.772809" 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-08-10T02:10:08.772102" elapsed="0.000732"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.773393" 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-08-10T02:10:08.772995" elapsed="0.000426"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.773713" 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-08-10T02:10:08.773834" 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-08-10T02:10:08.773581" elapsed="0.000279"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.774253" 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-08-10T02:10:08.774013" 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-08-10T02:10:08.774673" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.774382" elapsed="0.000348"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.775265" 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-08-10T02:10:08.774898" elapsed="0.000397"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.774754" elapsed="0.000581"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.774363" elapsed="0.001020"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.775963" 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-08-10T02:10:08.775538" elapsed="0.000453"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.776039" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:08.776189" 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-08-10T02:10:08.770907" elapsed="0.005307"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.792205" 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-08-10T02:10:08.791830" elapsed="0.000404"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.792951" 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-08-10T02:10:08.792747" elapsed="0.000266">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-08-10T02:10:08.793105" 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-08-10T02:10:08.792415" elapsed="0.000714"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.793687" 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-08-10T02:10:08.793289" elapsed="0.000426"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.794003" 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-08-10T02:10:08.794139" 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-08-10T02:10:08.793871" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.794576" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:08.794316" elapsed="0.000304"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:08.794970" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.794685" elapsed="0.000343"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.795550" 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-08-10T02:10:08.795230" elapsed="0.000347"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.795053" elapsed="0.000559"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.794667" elapsed="0.000966"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.796197" 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-08-10T02:10:08.795777" elapsed="0.000447"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.796272" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:08.796443" 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-08-10T02:10:08.791197" elapsed="0.005272"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.809502" 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-08-10T02:10:08.809110" elapsed="0.000420"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.810219" 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-08-10T02:10:08.810014" elapsed="0.000267">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-08-10T02:10:08.810394" 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-08-10T02:10:08.809687" elapsed="0.000733"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.810966" 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-08-10T02:10:08.810588" elapsed="0.000405"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:08.811307" 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-08-10T02:10:08.811489" 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-08-10T02:10:08.811149" elapsed="0.000367"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.811911" 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-08-10T02:10:08.811669" 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-08-10T02:10:08.812311" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.812025" elapsed="0.000363"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.812846" 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-08-10T02:10:08.812557" elapsed="0.000315"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.812412" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.812007" elapsed="0.000921"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.813660" 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-08-10T02:10:08.813071" elapsed="0.000617"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:08.813737" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:08.813889" 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-08-10T02:10:08.808569" elapsed="0.005347"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.814315" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:08.814076" elapsed="0.000283"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.814887" 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-08-10T02:10:08.814527" elapsed="0.000385"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:08.815583" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:08.815325" elapsed="0.000314"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.815280" elapsed="0.000383"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.816152" 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-08-10T02:10:08.815802" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.817873" 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-08-10T02:10:08.816329" elapsed="0.001582"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.818124" elapsed="0.000284"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-08-10T02:10:08.815249" elapsed="0.003202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.818897" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.818654" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.818638" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.819686" 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-08-10T02:10:08.819292" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.820473" 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-08-10T02:10:08.819867" 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-08-10T02:10:08.820661" elapsed="0.000184"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-08-10T02:10:08.818606" 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-08-10T02:10:08.821361" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.821104" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.821089" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.822104" 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-08-10T02:10:08.821753" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.822882" 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-08-10T02:10:08.822285" 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-08-10T02:10:08.823063" elapsed="0.000181"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-08-10T02:10:08.821059" 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-08-10T02:10:08.823738" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.823504" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.823489" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.824493" 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-08-10T02:10:08.824122" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.825249" 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-08-10T02:10:08.824671" 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-08-10T02:10:08.825449" elapsed="0.000183"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-08-10T02:10:08.823459" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.826084" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.825849" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.825834" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.826838" 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-08-10T02:10:08.826489" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.827644" 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-08-10T02:10:08.827017" 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-08-10T02:10:08.827825" elapsed="0.000181"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-08-10T02:10:08.825804" 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-08-10T02:10:08.828474" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.828220" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.828206" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.829204" 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-08-10T02:10:08.828859" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.829975" 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-08-10T02:10:08.829400" 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-08-10T02:10:08.830154" elapsed="0.000184"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-08-10T02:10:08.828177" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.830801" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.830568" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.830553" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.831581" 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-08-10T02:10:08.831187" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.832355" 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-08-10T02:10:08.831758" 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-08-10T02:10:08.832574" elapsed="0.000182"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-08-10T02:10:08.830524" 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-08-10T02:10:08.833207" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.832973" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.832958" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.833976" 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-08-10T02:10:08.833628" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.834882" 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-08-10T02:10:08.834158" elapsed="0.000753"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.835064" elapsed="0.000181"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-08-10T02:10:08.832928" 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-08-10T02:10:08.835731" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.835496" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.835467" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.836482" 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-08-10T02:10:08.836115" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.837236" 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-08-10T02:10:08.836661" 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-08-10T02:10:08.837437" elapsed="0.000184"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-08-10T02:10:08.835437" 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-08-10T02:10:08.838070" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.837835" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.837821" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.838835" 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-08-10T02:10:08.838475" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.839634" 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-08-10T02:10:08.839013" 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-08-10T02:10:08.839816" elapsed="0.000181"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-08-10T02:10:08.837792" 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-08-10T02:10:08.840462" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.840209" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.840195" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.841195" 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-08-10T02:10:08.840847" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.841972" 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-08-10T02:10:08.841392" 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-08-10T02:10:08.842152" elapsed="0.000184"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-08-10T02:10:08.840166" 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-08-10T02:10:08.842802" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.842568" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.842553" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.843604" 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-08-10T02:10:08.843189" elapsed="0.000446"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.844430" 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-08-10T02:10:08.843828" 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-08-10T02:10:08.844614" elapsed="0.000181"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-08-10T02:10:08.842523" 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-08-10T02:10:08.845244" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.845012" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.844997" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.845998" 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-08-10T02:10:08.845650" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.846771" 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-08-10T02:10:08.846175" 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-08-10T02:10:08.846952" elapsed="0.000180"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-08-10T02:10:08.844968" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.847631" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.847365" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.847331" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.848388" 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-08-10T02:10:08.848020" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.849146" 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-08-10T02:10:08.848570" 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-08-10T02:10:08.849326" elapsed="0.000204"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-08-10T02:10:08.847302" 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-08-10T02:10:08.849984" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.849748" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.849733" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.850873" 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-08-10T02:10:08.850392" elapsed="0.000507"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.851683" 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-08-10T02:10:08.851054" 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-08-10T02:10:08.851904" elapsed="0.000214"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-08-10T02:10:08.849704" elapsed="0.002459"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.852615" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.852365" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.852330" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.853374" 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-08-10T02:10:08.853005" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.854133" 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-08-10T02:10:08.853556" 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-08-10T02:10:08.854314" elapsed="0.000203"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-08-10T02:10:08.852301" 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-08-10T02:10:08.854970" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.854735" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.854719" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.855804" 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-08-10T02:10:08.855416" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.856590" 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-08-10T02:10:08.855986" 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-08-10T02:10:08.856772" elapsed="0.000181"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-08-10T02:10:08.854690" 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-08-10T02:10:08.857423" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.857169" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.857154" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.858156" 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-08-10T02:10:08.857808" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.858929" 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-08-10T02:10:08.858338" 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-08-10T02:10:08.859110" elapsed="0.000180"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-08-10T02:10:08.857126" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.859792" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.859527" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.859512" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.860569" 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-08-10T02:10:08.860189" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.861324" 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-08-10T02:10:08.860748" 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-08-10T02:10:08.861525" elapsed="0.000183"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-08-10T02:10:08.859483" 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-08-10T02:10:08.862157" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.861924" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.861910" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.862912" 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-08-10T02:10:08.862565" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.863684" 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-08-10T02:10:08.863090" 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-08-10T02:10:08.863892" elapsed="0.000183"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-08-10T02:10:08.861881" 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-08-10T02:10:08.864555" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.864291" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.864276" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.865280" 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-08-10T02:10:08.864938" elapsed="0.000368"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.866059" 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-08-10T02:10:08.865483" 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-08-10T02:10:08.866238" elapsed="0.000255"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-08-10T02:10:08.864247" 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-08-10T02:10:08.866949" elapsed="0.000301"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.866714" elapsed="0.000576"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.866698" elapsed="0.000616"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.867848" 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-08-10T02:10:08.867478" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.868634" 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-08-10T02:10:08.868034" 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-08-10T02:10:08.868816" elapsed="0.000182"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-08-10T02:10:08.866668" 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-08-10T02:10:08.869470" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.869213" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.869198" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.870206" 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-08-10T02:10:08.869857" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.870981" 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-08-10T02:10:08.870405" 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-08-10T02:10:08.871163" elapsed="0.000201"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-08-10T02:10:08.869169" 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-08-10T02:10:08.871816" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.871581" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.871566" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.872601" 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-08-10T02:10:08.872232" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.873376" 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-08-10T02:10:08.872781" 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-08-10T02:10:08.873559" elapsed="0.000181"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-08-10T02:10:08.871537" 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-08-10T02:10:08.874189" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.873956" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.873941" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.874940" 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-08-10T02:10:08.874595" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.875712" 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-08-10T02:10:08.875117" 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-08-10T02:10:08.875922" elapsed="0.000185"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-08-10T02:10:08.873912" 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-08-10T02:10:08.876580" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.876325" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.876310" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.877308" 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-08-10T02:10:08.876965" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.878081" 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-08-10T02:10:08.877507" 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-08-10T02:10:08.878302" elapsed="0.000203"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-08-10T02:10:08.876281" 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-08-10T02:10:08.878956" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.878721" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.878706" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.879709" 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-08-10T02:10:08.879359" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.880530" 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-08-10T02:10:08.879890" 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-08-10T02:10:08.880713" elapsed="0.000180"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-08-10T02:10:08.878677" 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-08-10T02:10:08.881357" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.881106" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.881091" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.882089" 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-08-10T02:10:08.881744" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.882865" 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-08-10T02:10:08.882267" 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-08-10T02:10:08.883045" elapsed="0.000179"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-08-10T02:10:08.881063" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.883806" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.883458" elapsed="0.000587"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.883443" elapsed="0.000627"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.884587" 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-08-10T02:10:08.884213" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.885357" 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-08-10T02:10:08.884766" 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-08-10T02:10:08.885541" elapsed="0.000182"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-08-10T02:10:08.883413" elapsed="0.002347"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.886170" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.885935" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.885921" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.886923" 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-08-10T02:10:08.886574" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.887699" 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-08-10T02:10:08.887103" 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-08-10T02:10:08.887880" elapsed="0.000210"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-08-10T02:10:08.885892" 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-08-10T02:10:08.888558" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.888304" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.888289" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.889289" 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-08-10T02:10:08.888943" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.890111" 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-08-10T02:10:08.889530" 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-08-10T02:10:08.890294" elapsed="0.000204"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-08-10T02:10:08.888261" 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-08-10T02:10:08.890946" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.890713" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.890698" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.891709" 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-08-10T02:10:08.891332" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.892507" 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-08-10T02:10:08.891889" 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-08-10T02:10:08.892688" elapsed="0.000181"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-08-10T02:10:08.890669" 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-08-10T02:10:08.893315" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.893082" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.893067" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.894066" 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-08-10T02:10:08.893721" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.894840" 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-08-10T02:10:08.894245" 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-08-10T02:10:08.895020" elapsed="0.000181"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-08-10T02:10:08.893039" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.895671" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.895438" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.895421" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.898396" 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-08-10T02:10:08.898012" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.899149" 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-08-10T02:10:08.898576" 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-08-10T02:10:08.899328" elapsed="0.000205"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-08-10T02:10:08.895390" elapsed="0.004181"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.899980" elapsed="0.000213"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.899747" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.899733" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.900771" 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-08-10T02:10:08.900415" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.901541" 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-08-10T02:10:08.900948" 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-08-10T02:10:08.901721" elapsed="0.000180"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-08-10T02:10:08.899703" 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-08-10T02:10:08.902549" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.902224" elapsed="0.000551"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.902100" elapsed="0.000699"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.903289" 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-08-10T02:10:08.902942" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.904062" 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-08-10T02:10:08.903488" 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-08-10T02:10:08.904274" elapsed="0.000201"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-08-10T02:10:08.902070" 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-08-10T02:10:08.904922" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.904689" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.904674" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.905669" 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-08-10T02:10:08.905303" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.906444" 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-08-10T02:10:08.905845" 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-08-10T02:10:08.906625" elapsed="0.000181"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-08-10T02:10:08.904645" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.907251" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.907019" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.907004" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.907995" 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-08-10T02:10:08.907652" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.908864" 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-08-10T02:10:08.908186" 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-08-10T02:10:08.909045" elapsed="0.000181"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-08-10T02:10:08.906975" 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-08-10T02:10:08.909699" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.909465" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.909450" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.910449" 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-08-10T02:10:08.910082" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.911205" 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-08-10T02:10:08.910631" 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-08-10T02:10:08.911403" elapsed="0.000182"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-08-10T02:10:08.909420" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.912036" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.911801" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.911786" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.912820" 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-08-10T02:10:08.912473" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.913588" 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-08-10T02:10:08.912998" 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-08-10T02:10:08.913803" elapsed="0.000184"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-08-10T02:10:08.911757" 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-08-10T02:10:08.914459" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.914202" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.914188" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.915187" 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-08-10T02:10:08.914841" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.915961" 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-08-10T02:10:08.915383" 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-08-10T02:10:08.916140" elapsed="0.000231"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-08-10T02:10:08.914159" 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-08-10T02:10:08.916823" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.916590" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.916575" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.917583" 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-08-10T02:10:08.917205" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.918339" 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-08-10T02:10:08.917761" 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-08-10T02:10:08.918536" elapsed="0.000179"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-08-10T02:10:08.916546" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.919276" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.919037" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.918914" elapsed="0.000637"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.920042" 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-08-10T02:10:08.919692" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.920934" 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-08-10T02:10:08.920220" 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-08-10T02:10:08.921118" elapsed="0.000181"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-08-10T02:10:08.918885" 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-08-10T02:10:08.921770" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.921537" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.921522" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.922525" 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-08-10T02:10:08.922152" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.923275" 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-08-10T02:10:08.922704" 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-08-10T02:10:08.923475" elapsed="0.000182"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-08-10T02:10:08.921493" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.924105" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.923873" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.923859" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.924918" 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-08-10T02:10:08.924564" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.925737" 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-08-10T02:10:08.925135" 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-08-10T02:10:08.925917" elapsed="0.000181"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-08-10T02:10:08.923829" 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-08-10T02:10:08.926567" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.926313" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.926299" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.927293" 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-08-10T02:10:08.926949" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.928067" 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-08-10T02:10:08.927491" 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-08-10T02:10:08.928248" elapsed="0.000258"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-08-10T02:10:08.926270" 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-08-10T02:10:08.929004" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.928761" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.928743" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.929770" 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-08-10T02:10:08.929421" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.930541" 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-08-10T02:10:08.929947" 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-08-10T02:10:08.930720" elapsed="0.000180"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-08-10T02:10:08.928709" 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-08-10T02:10:08.931363" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.931113" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.931099" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.932103" 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-08-10T02:10:08.931757" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.932920" 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-08-10T02:10:08.932280" 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-08-10T02:10:08.933100" elapsed="0.000179"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-08-10T02:10:08.931069" 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-08-10T02:10:08.933747" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.933515" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.933500" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.934499" 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-08-10T02:10:08.934130" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.935248" 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-08-10T02:10:08.934676" 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-08-10T02:10:08.935446" elapsed="0.000181"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-08-10T02:10:08.933470" 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-08-10T02:10:08.936191" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.935952" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.935828" elapsed="0.000695"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.937077" 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-08-10T02:10:08.936698" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.937857" 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-08-10T02:10:08.937257" 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-08-10T02:10:08.938037" elapsed="0.000181"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-08-10T02:10:08.935799" 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-08-10T02:10:08.938690" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.938456" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.938441" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.939437" 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-08-10T02:10:08.939072" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.940185" 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-08-10T02:10:08.939613" 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-08-10T02:10:08.940383" elapsed="0.000214"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-08-10T02:10:08.938411" 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-08-10T02:10:08.941080" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.940844" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.940829" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.941832" 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-08-10T02:10:08.941485" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.942609" 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-08-10T02:10:08.942010" 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-08-10T02:10:08.942790" elapsed="0.000180"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-08-10T02:10:08.940796" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.943435" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.943184" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.943169" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.944164" 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-08-10T02:10:08.943820" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.945017" 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-08-10T02:10:08.944358" 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-08-10T02:10:08.945199" elapsed="0.000202"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-08-10T02:10:08.943140" 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-08-10T02:10:08.945851" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.945618" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.945603" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.946601" 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-08-10T02:10:08.946233" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.947375" 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-08-10T02:10:08.946781" 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-08-10T02:10:08.947562" elapsed="0.000180"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-08-10T02:10:08.945574" 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-08-10T02:10:08.948233" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.947999" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.947984" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.949022" 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-08-10T02:10:08.948668" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.949801" 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-08-10T02:10:08.949204" 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-08-10T02:10:08.949982" elapsed="0.000180"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-08-10T02:10:08.947954" 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-08-10T02:10:08.950632" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.950397" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.950382" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.951377" 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-08-10T02:10:08.951014" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.952129" 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-08-10T02:10:08.951556" 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-08-10T02:10:08.952308" elapsed="0.000199"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-08-10T02:10:08.950337" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.953170" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.952907" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.952757" elapsed="0.000692"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.953941" 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-08-10T02:10:08.953592" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.954715" 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-08-10T02:10:08.954121" 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-08-10T02:10:08.954895" elapsed="0.000182"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-08-10T02:10:08.952723" 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-08-10T02:10:08.955545" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.955292" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.955276" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.956275" 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-08-10T02:10:08.955930" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.957121" 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-08-10T02:10:08.956473" 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-08-10T02:10:08.957302" elapsed="0.000204"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-08-10T02:10:08.955247" 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-08-10T02:10:08.957957" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.957722" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.957708" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.958706" 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-08-10T02:10:08.958357" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.959476" 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-08-10T02:10:08.958883" 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-08-10T02:10:08.959697" elapsed="0.000181"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-08-10T02:10:08.957678" 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-08-10T02:10:08.960326" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.960092" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.960078" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.961168" 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-08-10T02:10:08.960784" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.961952" 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-08-10T02:10:08.961369" 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-08-10T02:10:08.962132" elapsed="0.000182"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-08-10T02:10:08.960049" 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-08-10T02:10:08.962783" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.962549" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.962535" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.963531" 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-08-10T02:10:08.963165" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.964282" 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-08-10T02:10:08.963709" 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-08-10T02:10:08.964482" elapsed="0.000184"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-08-10T02:10:08.962506" 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-08-10T02:10:08.965153" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.964917" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.964902" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.965915" 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-08-10T02:10:08.965569" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.966686" 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-08-10T02:10:08.966091" 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-08-10T02:10:08.966865" elapsed="0.000180"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-08-10T02:10:08.964873" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.967516" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.967262" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.967246" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.968240" 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-08-10T02:10:08.967897" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.969098" 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-08-10T02:10:08.968435" 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-08-10T02:10:08.969291" elapsed="0.000210"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-08-10T02:10:08.967217" 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-08-10T02:10:08.970064" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.969826" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.969699" elapsed="0.000609"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.970819" 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-08-10T02:10:08.970469" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.971638" 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-08-10T02:10:08.971040" 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-08-10T02:10:08.971820" elapsed="0.000181"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-08-10T02:10:08.969670" 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-08-10T02:10:08.972471" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.972213" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.972198" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.973291" 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-08-10T02:10:08.972902" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.974076" 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-08-10T02:10:08.973497" 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-08-10T02:10:08.974257" elapsed="0.000202"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-08-10T02:10:08.972169" 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-08-10T02:10:08.974906" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.974672" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.974657" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.975656" 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-08-10T02:10:08.975288" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.976426" 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-08-10T02:10:08.975833" 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-08-10T02:10:08.976606" elapsed="0.000181"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-08-10T02:10:08.974628" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.977273" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.977038" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.977023" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.978026" 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-08-10T02:10:08.977680" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.978800" 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-08-10T02:10:08.978205" 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-08-10T02:10:08.978981" elapsed="0.000181"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-08-10T02:10:08.976994" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.979633" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.979398" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.979381" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.980381" 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-08-10T02:10:08.980018" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.981172" 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-08-10T02:10:08.980560" 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-08-10T02:10:08.981373" elapsed="0.000183"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-08-10T02:10:08.979336" 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-08-10T02:10:08.982051" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.981768" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.981753" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.982805" 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-08-10T02:10:08.982457" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.983580" 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-08-10T02:10:08.982984" 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-08-10T02:10:08.983763" elapsed="0.000181"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-08-10T02:10:08.981724" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.984409" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.984156" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.984142" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.985218" 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-08-10T02:10:08.984794" elapsed="0.000455"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.986018" 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-08-10T02:10:08.985438" 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-08-10T02:10:08.986199" elapsed="0.000201"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-08-10T02:10:08.984113" 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-08-10T02:10:08.986963" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.986725" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.986602" elapsed="0.000607"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.987721" 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-08-10T02:10:08.987370" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.988492" 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-08-10T02:10:08.987899" 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-08-10T02:10:08.988674" elapsed="0.000181"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-08-10T02:10:08.986573" 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-08-10T02:10:08.989383" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.989110" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.989093" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.990120" 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-08-10T02:10:08.989773" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.990895" 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-08-10T02:10:08.990298" 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-08-10T02:10:08.991076" elapsed="0.000180"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-08-10T02:10:08.989059" 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-08-10T02:10:08.991723" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.991490" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.991475" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.992473" 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-08-10T02:10:08.992109" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.993312" 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-08-10T02:10:08.992651" 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-08-10T02:10:08.993554" elapsed="0.000184"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-08-10T02:10:08.991446" 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-08-10T02:10:08.994183" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.993950" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.993936" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.994935" 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-08-10T02:10:08.994587" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.995712" 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-08-10T02:10:08.995112" 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-08-10T02:10:08.995893" elapsed="0.000182"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-08-10T02:10:08.993907" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:08.996542" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.996287" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.996272" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.997304" 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-08-10T02:10:08.996928" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.998078" 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-08-10T02:10:08.997504" 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-08-10T02:10:08.998257" elapsed="0.000209"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-08-10T02:10:08.996244" 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-08-10T02:10:08.998912" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:08.998679" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:08.998663" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:08.999660" 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-08-10T02:10:08.999295" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.000430" 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-08-10T02:10:08.999838" 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-08-10T02:10:09.000610" elapsed="0.000180"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-08-10T02:10:08.998635" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.001267" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.001003" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.000988" elapsed="0.000541"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.002014" 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-08-10T02:10:09.001671" elapsed="0.000368"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.002782" 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-08-10T02:10:09.002190" 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-08-10T02:10:09.002961" elapsed="0.000179"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-08-10T02:10:09.000959" 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-08-10T02:10:09.003718" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.003479" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.003355" elapsed="0.000607"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.004468" 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-08-10T02:10:09.004103" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.005276" 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-08-10T02:10:09.004683" 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-08-10T02:10:09.005476" elapsed="0.000183"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-08-10T02:10:09.003308" elapsed="0.002388"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.006105" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.005872" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.005857" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.006854" 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-08-10T02:10:09.006509" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.007626" 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-08-10T02:10:09.007032" 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-08-10T02:10:09.007806" elapsed="0.000180"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-08-10T02:10:09.005828" 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-08-10T02:10:09.008451" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.008198" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.008184" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.009216" 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-08-10T02:10:09.008838" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.009989" 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-08-10T02:10:09.009413" 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-08-10T02:10:09.010167" elapsed="0.000199"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-08-10T02:10:09.008155" 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-08-10T02:10:09.010814" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.010581" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.010566" elapsed="0.000488"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.011573" 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-08-10T02:10:09.011196" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.012322" 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-08-10T02:10:09.011751" 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-08-10T02:10:09.012521" elapsed="0.000181"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-08-10T02:10:09.010537" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.013168" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.012914" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.012900" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.013923" 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-08-10T02:10:09.013578" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.014699" 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-08-10T02:10:09.014099" 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-08-10T02:10:09.014877" elapsed="0.000179"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-08-10T02:10:09.012871" 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-08-10T02:10:09.015523" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.015270" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.015254" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.016291" 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-08-10T02:10:09.015945" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.017068" 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-08-10T02:10:09.016494" 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-08-10T02:10:09.020439" elapsed="0.000190"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-08-10T02:10:09.015225" elapsed="0.005443"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.021087" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.020844" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.020830" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.021856" 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-08-10T02:10:09.021511" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.022634" 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-08-10T02:10:09.022033" 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-08-10T02:10:09.022814" elapsed="0.000180"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-08-10T02:10:09.020801" 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-08-10T02:10:09.023925" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.023684" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.023193" elapsed="0.000978"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.024677" 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-08-10T02:10:09.024312" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.025469" 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-08-10T02:10:09.024855" 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-08-10T02:10:09.025653" elapsed="0.000208"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-08-10T02:10:09.023164" elapsed="0.002744"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.026453" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.026139" elapsed="0.000544"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.026119" elapsed="0.000588"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.027199" 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-08-10T02:10:09.026847" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.027973" 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-08-10T02:10:09.027395" 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-08-10T02:10:09.028151" elapsed="0.000180"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-08-10T02:10:09.026081" 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-08-10T02:10:09.028799" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.028568" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.028553" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.029567" 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-08-10T02:10:09.029180" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.030318" 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-08-10T02:10:09.029745" 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-08-10T02:10:09.030518" elapsed="0.000182"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-08-10T02:10:09.028524" 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-08-10T02:10:09.031206" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.030973" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.030958" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.031963" 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-08-10T02:10:09.031618" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.032728" 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-08-10T02:10:09.032140" 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-08-10T02:10:09.032908" elapsed="0.000181"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-08-10T02:10:09.030929" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.033600" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.033358" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.033321" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.034337" 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-08-10T02:10:09.033987" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.035103" 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-08-10T02:10:09.034532" 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-08-10T02:10:09.035282" elapsed="0.000223"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-08-10T02:10:09.033260" 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-08-10T02:10:09.035953" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.035720" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.035705" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.036704" 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-08-10T02:10:09.036355" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.037522" 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-08-10T02:10:09.036887" 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-08-10T02:10:09.037741" elapsed="0.000210"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-08-10T02:10:09.035676" elapsed="0.002313"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.038428" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.038172" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.038156" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.039168" 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-08-10T02:10:09.038821" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.039951" 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-08-10T02:10:09.039364" 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-08-10T02:10:09.040130" elapsed="0.000180"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-08-10T02:10:09.038127" 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-08-10T02:10:09.040905" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.040662" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.040532" elapsed="0.000618"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.041697" 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-08-10T02:10:09.041293" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.042476" 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-08-10T02:10:09.041878" 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-08-10T02:10:09.042698" elapsed="0.000182"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-08-10T02:10:09.040502" 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-08-10T02:10:09.043336" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.043098" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.043083" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.044083" 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-08-10T02:10:09.043738" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.044857" 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-08-10T02:10:09.044261" 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-08-10T02:10:09.045037" elapsed="0.000180"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-08-10T02:10:09.043053" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.045757" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.045472" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.045454" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.046519" 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-08-10T02:10:09.046150" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.047275" 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-08-10T02:10:09.046696" 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-08-10T02:10:09.047476" elapsed="0.000182"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-08-10T02:10:09.045419" 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-08-10T02:10:09.048104" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.047871" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.047856" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.048854" 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-08-10T02:10:09.048508" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.049669" 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-08-10T02:10:09.049031" 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-08-10T02:10:09.049850" elapsed="0.000182"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-08-10T02:10:09.047827" 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-08-10T02:10:09.050509" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.050248" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.050233" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.051239" 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-08-10T02:10:09.050893" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.052021" 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-08-10T02:10:09.051440" 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-08-10T02:10:09.052201" elapsed="0.000199"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-08-10T02:10:09.050204" 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-08-10T02:10:09.052846" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.052613" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.052598" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.053606" 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-08-10T02:10:09.053229" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.054421" 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-08-10T02:10:09.053823" 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-08-10T02:10:09.054603" elapsed="0.000181"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-08-10T02:10:09.052569" 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-08-10T02:10:09.055228" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.054996" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.054981" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.055977" 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-08-10T02:10:09.055632" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.056752" 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-08-10T02:10:09.056156" 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-08-10T02:10:09.056933" elapsed="0.000179"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-08-10T02:10:09.054952" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.057732" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.057456" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.057311" elapsed="0.000667"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.058489" 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-08-10T02:10:09.058119" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.059248" 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-08-10T02:10:09.058669" 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-08-10T02:10:09.059450" elapsed="0.000185"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-08-10T02:10:09.057282" 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-08-10T02:10:09.060084" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.059849" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.059834" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.060841" 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-08-10T02:10:09.060492" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.061628" 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-08-10T02:10:09.061020" 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-08-10T02:10:09.061810" elapsed="0.000181"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-08-10T02:10:09.059805" elapsed="0.002223"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-08-10T02:10:08.814967" elapsed="0.247092"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.063359" 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-08-10T02:10:09.062219" elapsed="0.001169"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.063451" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:10:09.063636" 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-08-10T02:10:08.757780" elapsed="0.305883"/>
</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-08-10T02:10:09.065130" 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-08-10T02:10:09.064831" elapsed="0.000379">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-08-10T02:10:09.065305" 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-08-10T02:10:09.064483" elapsed="0.000846"/>
</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-08-10T02:10:09.065721" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.065420" elapsed="0.000360"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.066304" 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-08-10T02:10:09.066012" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.065804" elapsed="0.000583"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.065402" elapsed="0.001007"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.068772" 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-08-10T02:10:09.066563" elapsed="0.002235"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:09.068848" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:09.069000" 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-08-10T02:10:09.064089" elapsed="0.004936"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.070653" 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-08-10T02:10:09.070393" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.071080" 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-08-10T02:10:09.070847" elapsed="0.000741"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.071985" 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-08-10T02:10:09.071740" elapsed="0.000288"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.072431" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:09.072176" elapsed="0.000297"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:09.073275" 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-08-10T02:10:09.073078" elapsed="0.000223"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-08-10T02:10:09.073679" 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-08-10T02:10:09.073477" elapsed="0.000229"/>
</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-08-10T02:10:09.073860" elapsed="0.000192"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.074466" 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-08-10T02:10:09.074204" elapsed="0.000305"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-08-10T02:10:09.074551" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:09.074703" 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-08-10T02:10:09.072676" elapsed="0.002051"/>
</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-08-10T02:10:09.104973" level="INFO">POST Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.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-08-10T02:10:09.105384" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=5000', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:09.105648" 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-08-10T02:10:09.076994" elapsed="0.028719"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.074950" elapsed="0.030884"/>
</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-08-10T02:10:09.106330" elapsed="0.000094"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.105940" elapsed="0.000598"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.074778" elapsed="0.031812"/>
</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-08-10T02:10:09.112834" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:09.109117" elapsed="0.003779"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.108585" elapsed="0.004360"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.108543" elapsed="0.004437"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.116467" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:09.113391" elapsed="0.003140"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.113057" elapsed="0.003522"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.113033" elapsed="0.003581"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.117413" 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-08-10T02:10:09.116859" elapsed="0.000593"/>
</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-08-10T02:10:09.117898" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.117549" elapsed="0.000428"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.118723" 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-08-10T02:10:09.118290" elapsed="0.000460"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.118046" elapsed="0.000739"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.117525" elapsed="0.001282"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.119357" 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-08-10T02:10:09.118976" elapsed="0.000409"/>
</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-08-10T02:10:09.119698" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.119454" elapsed="0.000300"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.120243" 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-08-10T02:10:09.119950" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.119778" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.119436" elapsed="0.000889"/>
</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-08-10T02:10:09.120496" elapsed="0.000341"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:10:09.121275" 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-08-10T02:10:09.121000" elapsed="0.000301"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.121481" elapsed="0.002214"/>
</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-08-10T02:10:09.107486" elapsed="0.016272"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:09.123934" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:09.123828" elapsed="0.000151"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.123811" elapsed="0.000190"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:10:09.126459" 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-08-10T02:10:09.124145" elapsed="0.002341"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:10:09.126534" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:09.126688" 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-08-10T02:10:09.069377" elapsed="0.057337"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.126819" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:09.126973" 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-08-10T02:10:08.673819" elapsed="0.453179"/>
</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-08-10T02:10:09.127359" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.127102" elapsed="0.000330"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.127086" elapsed="0.000372"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.127491" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-group-1</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-08-10T02:10:08.671293" elapsed="0.456320"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-08-10T02:10:08.659645" elapsed="0.468014"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:10:07.694450" elapsed="1.433243"/>
</for>
<doc>Add 100 groups of type 1 in every switch.</doc>
<status status="PASS" start="2026-08-10T02:10:07.694040" elapsed="1.433775"/>
</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-08-10T02:10:09.131281" 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-08-10T02:10:09.130882" elapsed="0.000426"/>
</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-08-10T02:10:09.175617" 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-08-10T02:10:09.175219" elapsed="0.000427"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.176412" 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-08-10T02:10:09.176136" elapsed="0.000351">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-08-10T02:10:09.176581" 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-08-10T02:10:09.175806" elapsed="0.000799"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.177145" 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-08-10T02:10:09.176766" elapsed="0.000406"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.177484" 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-08-10T02:10:09.177641" 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-08-10T02:10:09.177328" elapsed="0.000338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.178069" 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-08-10T02:10:09.177820" elapsed="0.000295"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.179100" 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-08-10T02:10:09.178845" elapsed="0.000299"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.179583" 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-08-10T02:10:09.179301" elapsed="0.000308"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.180314" 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-08-10T02:10:09.179953" elapsed="0.000428"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-08-10T02:10:09.181441" 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-08-10T02:10:09.180956" elapsed="0.000512"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-08-10T02:10:09.181518" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:09.181673" 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-08-10T02:10:09.180572" 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-08-10T02:10:09.181847" elapsed="0.000276"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:1</var>
<status status="PASS" start="2026-08-10T02:10:09.179821" elapsed="0.002343"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-08-10T02:10:09.179655" elapsed="0.002545"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:09.182241" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:09.182415" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:09.178523" elapsed="0.003917"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.178182" elapsed="0.004290"/>
</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-08-10T02:10:09.182668" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.182496" elapsed="0.000229"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.178163" elapsed="0.004583"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.183440" 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-08-10T02:10:09.182884" elapsed="0.000584"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.183516" 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-08-10T02:10:09.174604" elapsed="0.009035"/>
</kw>
<msg time="2026-08-10T02:10:09.183693" 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-08-10T02:10:09.162522" elapsed="0.021219"/>
</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-08-10T02:10:09.195844" 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-08-10T02:10:09.207723" 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-08-10T02:10:09.219521" 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-08-10T02:10:09.219714" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:09.219886" 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-08-10T02:10:09.220244" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.220102" elapsed="0.000237"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:09.220088" elapsed="0.000292"/>
</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-08-10T02:10:09.220521" 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-08-10T02:10:09.220684" 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-08-10T02:10:09.220848" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:09.220060" elapsed="0.000841"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:09.219958" elapsed="0.000976"/>
</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-08-10T02:10:09.221105" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:09.221183" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:09.221299" 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-08-10T02:10:09.155553" elapsed="0.065771"/>
</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-08-10T02:10:09.231856" elapsed="0.000333"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.245042" 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-08-10T02:10:09.244655" elapsed="0.000417"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.245815" 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-08-10T02:10:09.245589" elapsed="0.000300">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-08-10T02:10:09.245980" 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-08-10T02:10:09.245234" elapsed="0.000771"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.246564" 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-08-10T02:10:09.246165" elapsed="0.000427"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.246881" 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-08-10T02:10:09.247026" 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-08-10T02:10:09.246748" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.247514" 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-08-10T02:10:09.247249" elapsed="0.000309"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:09.247930" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.247629" elapsed="0.000359"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.248465" 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-08-10T02:10:09.248156" elapsed="0.000337"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.248013" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.247609" elapsed="0.000942"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.249118" 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-08-10T02:10:09.248695" elapsed="0.000450"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.249193" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:09.249362" 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-08-10T02:10:09.243991" elapsed="0.005397"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.262455" 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-08-10T02:10:09.262063" elapsed="0.000421"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.263183" 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-08-10T02:10:09.262974" elapsed="0.000332">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-08-10T02:10:09.263448" 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-08-10T02:10:09.262643" elapsed="0.000831"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.264039" 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-08-10T02:10:09.263650" elapsed="0.000417"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.264381" 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-08-10T02:10:09.264514" 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-08-10T02:10:09.264225" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.264942" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:09.264694" elapsed="0.000292"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:09.265363" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.265051" elapsed="0.000375"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.265902" 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-08-10T02:10:09.265605" elapsed="0.000323"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.265458" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.265034" elapsed="0.000952"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.266583" 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-08-10T02:10:09.266131" elapsed="0.000479"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.266660" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:09.266814" 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-08-10T02:10:09.261447" elapsed="0.005393"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.288025" 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-08-10T02:10:09.287652" elapsed="0.000401"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.288773" 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-08-10T02:10:09.288565" elapsed="0.000272">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-08-10T02:10:09.288929" 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-08-10T02:10:09.288213" elapsed="0.000740"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.289552" 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-08-10T02:10:09.289150" elapsed="0.000429"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.289871" 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-08-10T02:10:09.290000" 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-08-10T02:10:09.289737" elapsed="0.000290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.290440" 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-08-10T02:10:09.290179" elapsed="0.000309"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:09.290846" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.290554" elapsed="0.000348"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.291388" 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-08-10T02:10:09.291069" elapsed="0.000346"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.290927" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.290536" elapsed="0.000950"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.292203" 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-08-10T02:10:09.291630" elapsed="0.000602"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.292281" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:09.292465" 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-08-10T02:10:09.287051" elapsed="0.005441"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.292894" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:09.292653" elapsed="0.000267"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.293458" 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-08-10T02:10:09.293075" elapsed="0.000409"/>
</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-08-10T02:10:09.294110" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.293878" elapsed="0.000288"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.293862" elapsed="0.000327"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.294697" 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-08-10T02:10:09.294325" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.295681" 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-08-10T02:10:09.294876" elapsed="0.000835"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.295868" elapsed="0.000201"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-08-10T02:10:09.293831" 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-08-10T02:10:09.296553" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.296286" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.296272" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.297293" 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-08-10T02:10:09.296943" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.298067" 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-08-10T02:10:09.297493" 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-08-10T02:10:09.298283" elapsed="0.000203"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-08-10T02:10:09.296242" 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-08-10T02:10:09.298934" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.298700" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.298685" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.299705" 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-08-10T02:10:09.299321" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.300481" 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-08-10T02:10:09.299885" 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-08-10T02:10:09.300663" elapsed="0.000181"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-08-10T02:10:09.298656" 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-08-10T02:10:09.301290" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.301057" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.301042" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.302043" 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-08-10T02:10:09.301697" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.302807" 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-08-10T02:10:09.302221" 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-08-10T02:10:09.302989" elapsed="0.000180"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-08-10T02:10:09.301013" elapsed="0.002193"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.303667" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.303402" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.303387" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.304424" 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-08-10T02:10:09.304056" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.305189" 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-08-10T02:10:09.304612" 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-08-10T02:10:09.305411" elapsed="0.000186"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-08-10T02:10:09.303356" 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-08-10T02:10:09.306044" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.305811" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.305796" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.306793" 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-08-10T02:10:09.306446" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.307554" 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-08-10T02:10:09.306971" 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-08-10T02:10:09.307750" elapsed="0.000184"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-08-10T02:10:09.305767" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.308398" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.308146" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.308131" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.309173" 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-08-10T02:10:09.308823" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.309952" 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-08-10T02:10:09.309373" 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-08-10T02:10:09.310133" elapsed="0.000181"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-08-10T02:10:09.308103" 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-08-10T02:10:09.310786" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.310553" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.310538" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.311536" 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-08-10T02:10:09.311171" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.312479" 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-08-10T02:10:09.311758" 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-08-10T02:10:09.312662" elapsed="0.000180"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-08-10T02:10:09.310509" 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-08-10T02:10:09.313286" elapsed="0.000216"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.313051" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.313036" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.314049" 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-08-10T02:10:09.313703" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.314873" 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-08-10T02:10:09.314230" 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-08-10T02:10:09.315060" elapsed="0.000185"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-08-10T02:10:09.313007" 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-08-10T02:10:09.315736" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.315480" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.315466" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.316522" 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-08-10T02:10:09.316131" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.317287" 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-08-10T02:10:09.316704" 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-08-10T02:10:09.317506" elapsed="0.000202"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-08-10T02:10:09.315436" 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-08-10T02:10:09.318165" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.317926" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.317910" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.318933" 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-08-10T02:10:09.318575" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.319752" 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-08-10T02:10:09.319114" 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-08-10T02:10:09.319938" elapsed="0.000182"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-08-10T02:10:09.317880" 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-08-10T02:10:09.320640" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.320393" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.320377" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.321396" 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-08-10T02:10:09.321027" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.322147" 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-08-10T02:10:09.321576" 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-08-10T02:10:09.322327" elapsed="0.000201"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-08-10T02:10:09.320329" 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-08-10T02:10:09.322975" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.322742" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.322727" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.323749" 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-08-10T02:10:09.323379" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.324528" 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-08-10T02:10:09.323935" 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-08-10T02:10:09.324709" elapsed="0.000179"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-08-10T02:10:09.322698" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.325354" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.325103" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.325089" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.326086" 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-08-10T02:10:09.325742" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.326857" 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-08-10T02:10:09.326263" 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-08-10T02:10:09.327036" elapsed="0.000180"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-08-10T02:10:09.325060" 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-08-10T02:10:09.327684" elapsed="0.000225"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.327451" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.327436" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.328617" 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-08-10T02:10:09.328118" elapsed="0.000527"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.329406" 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-08-10T02:10:09.328801" 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-08-10T02:10:09.329592" elapsed="0.000187"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-08-10T02:10:09.327406" elapsed="0.002410"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.330236" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.329996" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.329980" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.331008" 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-08-10T02:10:09.330649" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.331806" 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-08-10T02:10:09.331189" 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-08-10T02:10:09.332030" elapsed="0.000183"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-08-10T02:10:09.329951" 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-08-10T02:10:09.332680" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.332446" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.332432" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.333431" 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-08-10T02:10:09.333064" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.334176" 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-08-10T02:10:09.333609" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.334374" elapsed="0.000183"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-08-10T02:10:09.332402" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.335000" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.334768" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.334753" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.335752" 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-08-10T02:10:09.335404" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.336554" 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-08-10T02:10:09.335961" 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-08-10T02:10:09.336735" elapsed="0.000181"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-08-10T02:10:09.334724" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.337379" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.337128" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.337114" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.338110" 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-08-10T02:10:09.337764" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.338875" 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-08-10T02:10:09.338287" 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-08-10T02:10:09.339054" elapsed="0.000180"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-08-10T02:10:09.337085" elapsed="0.002185"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.339700" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.339468" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.339453" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.340462" 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-08-10T02:10:09.340097" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.341199" 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-08-10T02:10:09.340638" elapsed="0.000589"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.341396" elapsed="0.000180"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-08-10T02:10:09.339424" elapsed="0.002188"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.342020" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.341789" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.341774" elapsed="0.000486"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.342764" 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-08-10T02:10:09.342419" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.343583" 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-08-10T02:10:09.342996" 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-08-10T02:10:09.343761" elapsed="0.000227"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-08-10T02:10:09.341745" 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-08-10T02:10:09.344465" elapsed="0.000298"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.344207" elapsed="0.000595"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.344193" elapsed="0.000634"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.345316" 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-08-10T02:10:09.344968" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.346083" 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-08-10T02:10:09.345514" 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-08-10T02:10:09.346263" elapsed="0.000202"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-08-10T02:10:09.344163" 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-08-10T02:10:09.346912" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.346679" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.346664" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.347660" 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-08-10T02:10:09.347293" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.348443" 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-08-10T02:10:09.347835" 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-08-10T02:10:09.348623" elapsed="0.000181"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-08-10T02:10:09.346636" elapsed="0.002203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.349247" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.349015" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.349000" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.349995" 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-08-10T02:10:09.349651" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.350755" 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-08-10T02:10:09.350171" 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-08-10T02:10:09.350934" elapsed="0.000181"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-08-10T02:10:09.348972" elapsed="0.002179"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.351585" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.351328" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.351314" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.352386" 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-08-10T02:10:09.352009" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.353135" 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-08-10T02:10:09.352567" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.353313" elapsed="0.000202"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-08-10T02:10:09.351285" 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-08-10T02:10:09.354002" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.353732" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.353715" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.354761" 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-08-10T02:10:09.354408" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.355533" 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-08-10T02:10:09.354944" 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-08-10T02:10:09.355713" elapsed="0.000181"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-08-10T02:10:09.353685" 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-08-10T02:10:09.356380" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.356127" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.356113" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.357111" 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-08-10T02:10:09.356766" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.357878" 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-08-10T02:10:09.357288" 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-08-10T02:10:09.358056" elapsed="0.000181"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-08-10T02:10:09.356083" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.358707" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.358474" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.358458" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.359455" 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-08-10T02:10:09.359089" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.360247" 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-08-10T02:10:09.359633" 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-08-10T02:10:09.360449" elapsed="0.000191"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-08-10T02:10:09.358428" 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-08-10T02:10:09.361200" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.360856" elapsed="0.000585"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.360841" elapsed="0.000624"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.361953" 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-08-10T02:10:09.361606" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.362728" 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-08-10T02:10:09.362130" 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-08-10T02:10:09.362909" elapsed="0.000181"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-08-10T02:10:09.360812" 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-08-10T02:10:09.363563" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.363302" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.363287" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.364311" 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-08-10T02:10:09.363945" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.365077" 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-08-10T02:10:09.364510" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.365292" elapsed="0.000203"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-08-10T02:10:09.363258" 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-08-10T02:10:09.365939" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.365707" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.365692" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.366694" 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-08-10T02:10:09.366321" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.367462" 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-08-10T02:10:09.366872" 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-08-10T02:10:09.367643" elapsed="0.000181"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-08-10T02:10:09.365664" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.368300" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.368037" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.368022" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.369085" 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-08-10T02:10:09.368708" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.369861" 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-08-10T02:10:09.369265" 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-08-10T02:10:09.370042" elapsed="0.000181"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-08-10T02:10:09.367993" 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-08-10T02:10:09.370690" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.370458" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.370443" elapsed="0.000487"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.371433" 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-08-10T02:10:09.371070" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.372190" 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-08-10T02:10:09.371610" 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-08-10T02:10:09.372385" elapsed="0.000181"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-08-10T02:10:09.370414" elapsed="0.002189"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.373014" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.372782" elapsed="0.000448"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.372765" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.373758" 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-08-10T02:10:09.373413" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.374522" 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-08-10T02:10:09.373936" 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-08-10T02:10:09.374701" elapsed="0.000179"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-08-10T02:10:09.372736" elapsed="0.002180"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.375321" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.375091" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.375077" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.376069" 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-08-10T02:10:09.375727" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.376928" 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-08-10T02:10:09.376326" 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-08-10T02:10:09.377110" elapsed="0.000181"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-08-10T02:10:09.375048" 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-08-10T02:10:09.378607" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.378360" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.377513" elapsed="0.001344"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.379367" 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-08-10T02:10:09.379000" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.380118" 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-08-10T02:10:09.379549" 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-08-10T02:10:09.380327" elapsed="0.000203"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-08-10T02:10:09.377484" elapsed="0.003084"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.380981" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.380748" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.380733" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.381732" 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-08-10T02:10:09.381383" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.382498" 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-08-10T02:10:09.381910" 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-08-10T02:10:09.382680" elapsed="0.000181"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-08-10T02:10:09.380704" elapsed="0.002193"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.383307" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.383074" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.383060" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.384057" 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-08-10T02:10:09.383711" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.384869" 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-08-10T02:10:09.384269" 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-08-10T02:10:09.385050" elapsed="0.000182"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-08-10T02:10:09.383031" 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-08-10T02:10:09.385699" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.385466" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.385452" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.386456" 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-08-10T02:10:09.386081" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.387207" 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-08-10T02:10:09.386636" 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-08-10T02:10:09.387407" elapsed="0.000188"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-08-10T02:10:09.385422" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.388042" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.387809" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.387794" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.388844" 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-08-10T02:10:09.388496" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.389614" 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-08-10T02:10:09.389021" 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-08-10T02:10:09.389795" elapsed="0.000180"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-08-10T02:10:09.387766" 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-08-10T02:10:09.390439" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.390188" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.390173" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.391173" 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-08-10T02:10:09.390828" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.391944" 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-08-10T02:10:09.391370" 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-08-10T02:10:09.392125" elapsed="0.000245"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-08-10T02:10:09.390145" 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-08-10T02:10:09.392826" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.392591" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.392576" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.393579" 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-08-10T02:10:09.393210" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.394330" 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-08-10T02:10:09.393758" 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-08-10T02:10:09.394533" elapsed="0.000181"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-08-10T02:10:09.392547" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.395285" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.395044" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.394915" elapsed="0.000651"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.396059" 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-08-10T02:10:09.395708" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.396852" 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-08-10T02:10:09.396238" 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-08-10T02:10:09.397036" elapsed="0.000181"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-08-10T02:10:09.394886" 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-08-10T02:10:09.397689" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.397453" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.397438" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.398441" 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-08-10T02:10:09.398073" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.399191" 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-08-10T02:10:09.398621" 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-08-10T02:10:09.399392" elapsed="0.000183"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-08-10T02:10:09.397409" 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-08-10T02:10:09.400066" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.399830" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.399815" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.400859" 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-08-10T02:10:09.400506" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.401634" 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-08-10T02:10:09.401041" 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-08-10T02:10:09.401816" elapsed="0.000181"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-08-10T02:10:09.399785" 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-08-10T02:10:09.402464" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.402212" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.402197" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.403204" 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-08-10T02:10:09.402851" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.403971" 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-08-10T02:10:09.403401" 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-08-10T02:10:09.404150" elapsed="0.000180"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-08-10T02:10:09.402168" 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-08-10T02:10:09.404808" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.404576" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.404562" elapsed="0.000487"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.405555" 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-08-10T02:10:09.405191" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.406297" 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-08-10T02:10:09.405733" elapsed="0.000592"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.406495" elapsed="0.000180"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-08-10T02:10:09.404533" elapsed="0.002179"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.407121" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.406888" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.406873" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.407867" 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-08-10T02:10:09.407525" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.408680" 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-08-10T02:10:09.408043" 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-08-10T02:10:09.408865" elapsed="0.000186"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-08-10T02:10:09.406844" 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-08-10T02:10:09.409526" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.409266" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.409251" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.410279" 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-08-10T02:10:09.409917" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.411065" 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-08-10T02:10:09.410481" 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-08-10T02:10:09.411292" elapsed="0.000208"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-08-10T02:10:09.409221" 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-08-10T02:10:09.412079" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.411832" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.411705" elapsed="0.000624"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.412882" 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-08-10T02:10:09.412520" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.413675" 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-08-10T02:10:09.413066" 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-08-10T02:10:09.413861" elapsed="0.000187"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-08-10T02:10:09.411675" elapsed="0.002410"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.414534" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.414268" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.414253" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.415284" 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-08-10T02:10:09.414924" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.416075" 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-08-10T02:10:09.415495" 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-08-10T02:10:09.416258" elapsed="0.000207"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-08-10T02:10:09.414223" elapsed="0.002313"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.416955" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.416719" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.416705" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.417712" 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-08-10T02:10:09.417356" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.418478" 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-08-10T02:10:09.417891" 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-08-10T02:10:09.418657" elapsed="0.000181"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-08-10T02:10:09.416675" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.419281" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.419051" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.419036" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.420038" 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-08-10T02:10:09.419693" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.420822" 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-08-10T02:10:09.420216" 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-08-10T02:10:09.421003" elapsed="0.000181"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-08-10T02:10:09.419007" 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-08-10T02:10:09.421656" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.421422" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.421407" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.422403" 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-08-10T02:10:09.422038" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.423196" 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-08-10T02:10:09.422622" 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-08-10T02:10:09.423396" elapsed="0.000184"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-08-10T02:10:09.421376" 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-08-10T02:10:09.424030" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.423796" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.423782" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.424821" 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-08-10T02:10:09.424431" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.425590" 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-08-10T02:10:09.425000" 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-08-10T02:10:09.425770" elapsed="0.000180"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-08-10T02:10:09.423753" 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-08-10T02:10:09.426416" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.426165" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.426151" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.427147" 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-08-10T02:10:09.426802" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.427911" 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-08-10T02:10:09.427323" 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-08-10T02:10:09.428089" elapsed="0.000179"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-08-10T02:10:09.426122" elapsed="0.002183"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.428906" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.428657" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.428492" elapsed="0.000662"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.429665" 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-08-10T02:10:09.429295" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.430429" 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-08-10T02:10:09.429843" 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-08-10T02:10:09.430610" elapsed="0.000182"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-08-10T02:10:09.428463" 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-08-10T02:10:09.431240" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.431007" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.430993" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.431990" 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-08-10T02:10:09.431644" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.432805" 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-08-10T02:10:09.432167" 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-08-10T02:10:09.432990" elapsed="0.000181"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-08-10T02:10:09.430964" 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-08-10T02:10:09.433676" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.433404" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.433390" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.434435" 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-08-10T02:10:09.434065" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.435186" 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-08-10T02:10:09.434613" 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-08-10T02:10:09.435386" elapsed="0.000184"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-08-10T02:10:09.433359" 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-08-10T02:10:09.436017" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.435784" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.435769" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.436787" 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-08-10T02:10:09.436418" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.437562" 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-08-10T02:10:09.436966" 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-08-10T02:10:09.437742" elapsed="0.000180"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-08-10T02:10:09.435741" 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-08-10T02:10:09.438384" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.438135" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.438120" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.439121" 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-08-10T02:10:09.438776" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.439888" 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-08-10T02:10:09.439298" 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-08-10T02:10:09.440066" elapsed="0.000180"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-08-10T02:10:09.438092" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.440781" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.440483" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.440467" elapsed="0.000578"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.441562" 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-08-10T02:10:09.441189" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.442309" 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-08-10T02:10:09.441739" 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-08-10T02:10:09.442524" elapsed="0.000183"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-08-10T02:10:09.440438" 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-08-10T02:10:09.443163" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.442931" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.442915" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.443914" 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-08-10T02:10:09.443567" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.444676" 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-08-10T02:10:09.444090" 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-08-10T02:10:09.444932" elapsed="0.000183"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-08-10T02:10:09.442885" 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-08-10T02:10:09.445716" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.445474" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.445322" elapsed="0.000641"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.446475" 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-08-10T02:10:09.446104" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.447225" 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-08-10T02:10:09.446657" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.447425" elapsed="0.000183"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-08-10T02:10:09.445293" 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-08-10T02:10:09.448056" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.447824" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.447810" elapsed="0.000487"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.448842" 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-08-10T02:10:09.448456" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.449609" 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-08-10T02:10:09.449021" 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-08-10T02:10:09.449789" elapsed="0.000180"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-08-10T02:10:09.447781" 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-08-10T02:10:09.450439" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.450181" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.450166" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.451168" 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-08-10T02:10:09.450824" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.451938" 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-08-10T02:10:09.451366" 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-08-10T02:10:09.452117" elapsed="0.000180"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-08-10T02:10:09.450138" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.452761" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.452529" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.452514" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.453529" 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-08-10T02:10:09.453161" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.454275" 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-08-10T02:10:09.453707" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.454473" elapsed="0.000181"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-08-10T02:10:09.452485" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.455100" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.454867" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.454852" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.455853" 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-08-10T02:10:09.455506" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.456656" 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-08-10T02:10:09.456068" 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-08-10T02:10:09.456865" elapsed="0.000183"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-08-10T02:10:09.454822" 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-08-10T02:10:09.457517" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.457261" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.457246" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.458243" 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-08-10T02:10:09.457900" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.459006" 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-08-10T02:10:09.458440" 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-08-10T02:10:09.459185" elapsed="0.000198"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-08-10T02:10:09.457218" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.459827" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.459595" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.459580" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.460576" 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-08-10T02:10:09.460211" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.461380" 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-08-10T02:10:09.460755" 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-08-10T02:10:09.461571" elapsed="0.000180"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-08-10T02:10:09.459551" 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-08-10T02:10:09.462311" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.462073" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.461950" elapsed="0.000626"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.463062" 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-08-10T02:10:09.462717" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.463830" 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-08-10T02:10:09.463240" 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-08-10T02:10:09.464009" elapsed="0.000180"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-08-10T02:10:09.461920" 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-08-10T02:10:09.464656" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.464423" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.464408" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.465542" 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-08-10T02:10:09.465137" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.466313" 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-08-10T02:10:09.465727" 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-08-10T02:10:09.466519" elapsed="0.000187"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-08-10T02:10:09.464377" 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-08-10T02:10:09.467159" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.466922" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.466908" elapsed="0.000568"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.467986" 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-08-10T02:10:09.467624" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.468771" 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-08-10T02:10:09.468167" 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-08-10T02:10:09.468992" elapsed="0.000188"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-08-10T02:10:09.466877" 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-08-10T02:10:09.469703" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.469461" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.469446" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.470480" 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-08-10T02:10:09.470096" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.471249" 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-08-10T02:10:09.470664" 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-08-10T02:10:09.471453" elapsed="0.000187"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-08-10T02:10:09.469411" 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-08-10T02:10:09.472094" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.471857" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.471843" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.472861" 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-08-10T02:10:09.472506" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.473670" 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-08-10T02:10:09.473062" 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-08-10T02:10:09.473852" elapsed="0.000185"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-08-10T02:10:09.471812" 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-08-10T02:10:09.474508" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.474251" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.474236" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.475255" 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-08-10T02:10:09.474900" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.476041" 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-08-10T02:10:09.475457" 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-08-10T02:10:09.476224" elapsed="0.000204"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-08-10T02:10:09.474207" 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-08-10T02:10:09.476882" elapsed="0.000252"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.476647" elapsed="0.000530"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.476631" elapsed="0.000571"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.477740" 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-08-10T02:10:09.477374" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.478513" 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-08-10T02:10:09.477921" 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-08-10T02:10:09.478693" elapsed="0.000181"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-08-10T02:10:09.476602" 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-08-10T02:10:09.479494" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.479234" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.479113" elapsed="0.000628"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.480228" 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-08-10T02:10:09.479881" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.480996" 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-08-10T02:10:09.480424" 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-08-10T02:10:09.481263" elapsed="0.000215"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-08-10T02:10:09.479083" 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-08-10T02:10:09.481940" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.481698" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.481683" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.482712" 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-08-10T02:10:09.482337" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.483499" 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-08-10T02:10:09.482893" 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-08-10T02:10:09.483683" elapsed="0.000186"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-08-10T02:10:09.481653" 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-08-10T02:10:09.484318" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.484083" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.484068" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.485294" 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-08-10T02:10:09.484730" elapsed="0.000676"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.487373" 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-08-10T02:10:09.485833" elapsed="0.001613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.487826" elapsed="0.000449"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-08-10T02:10:09.484038" elapsed="0.004367"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.489528" elapsed="0.000275"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.488845" elapsed="0.001013"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.488809" elapsed="0.001083"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.490614" 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-08-10T02:10:09.490090" elapsed="0.000561"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.491695" 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-08-10T02:10:09.490866" elapsed="0.000870"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.491949" elapsed="0.000255"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-08-10T02:10:09.488739" elapsed="0.003516"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.492861" elapsed="0.000255"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.492532" elapsed="0.000657"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.492511" elapsed="0.000712"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.493937" 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-08-10T02:10:09.493444" elapsed="0.000529"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.495025" 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-08-10T02:10:09.494184" elapsed="0.000932"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.495359" elapsed="0.000261"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-08-10T02:10:09.492470" elapsed="0.003203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.496251" elapsed="0.000283"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.495923" elapsed="0.000665"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.495901" elapsed="0.000720"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.497378" 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-08-10T02:10:09.496819" elapsed="0.000605"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.498225" 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-08-10T02:10:09.497650" 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-08-10T02:10:09.498425" elapsed="0.000182"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-08-10T02:10:09.495861" elapsed="0.002784"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.499055" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.498821" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.498806" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.499811" 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-08-10T02:10:09.499460" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.500587" 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-08-10T02:10:09.499990" 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-08-10T02:10:09.500768" elapsed="0.000181"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-08-10T02:10:09.498777" 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-08-10T02:10:09.501557" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.501298" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.501149" elapsed="0.000657"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.502299" 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-08-10T02:10:09.501948" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.503070" 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-08-10T02:10:09.502498" 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-08-10T02:10:09.503253" elapsed="0.000232"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-08-10T02:10:09.501120" 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-08-10T02:10:09.503956" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.503716" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.503701" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.504739" 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-08-10T02:10:09.504365" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.505583" 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-08-10T02:10:09.504922" 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-08-10T02:10:09.505770" elapsed="0.000185"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-08-10T02:10:09.503670" 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-08-10T02:10:09.506449" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.506173" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.506158" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.507200" 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-08-10T02:10:09.506849" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.508012" 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-08-10T02:10:09.507436" 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-08-10T02:10:09.508192" elapsed="0.000202"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-08-10T02:10:09.506128" 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-08-10T02:10:09.508847" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.508611" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.508596" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.509619" 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-08-10T02:10:09.509234" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.510394" 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-08-10T02:10:09.509800" 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-08-10T02:10:09.510578" elapsed="0.000183"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-08-10T02:10:09.508567" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.511211" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.510976" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.510961" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.511965" 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-08-10T02:10:09.511617" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.512735" 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-08-10T02:10:09.512143" 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-08-10T02:10:09.512916" elapsed="0.000182"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-08-10T02:10:09.510932" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.513600" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.513359" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.513328" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.514382" 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-08-10T02:10:09.514010" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.515162" 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-08-10T02:10:09.514585" 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-08-10T02:10:09.515364" elapsed="0.000185"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-08-10T02:10:09.513268" 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-08-10T02:10:09.516004" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.515767" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.515751" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.516766" 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-08-10T02:10:09.516414" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.517549" 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-08-10T02:10:09.516945" 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-08-10T02:10:09.517733" elapsed="0.000181"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-08-10T02:10:09.515720" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.518537" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.518240" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.518114" elapsed="0.000673"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.519279" 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-08-10T02:10:09.518929" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.520050" 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-08-10T02:10:09.519478" 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-08-10T02:10:09.520231" elapsed="0.000202"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-08-10T02:10:09.518084" 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-08-10T02:10:09.520885" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.520649" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.520634" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.521709" 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-08-10T02:10:09.521285" elapsed="0.000451"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.522480" 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-08-10T02:10:09.521889" 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-08-10T02:10:09.522661" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-08-10T02:10:09.520605" 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-08-10T02:10:09.523291" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.523056" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.523041" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.524045" 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-08-10T02:10:09.523698" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.524813" 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-08-10T02:10:09.524223" 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-08-10T02:10:09.524994" elapsed="0.000182"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-08-10T02:10:09.523012" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.525701" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.525460" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.525439" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.526462" 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-08-10T02:10:09.526090" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.527215" 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-08-10T02:10:09.526643" 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-08-10T02:10:09.527420" elapsed="0.000184"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-08-10T02:10:09.525385" 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-08-10T02:10:09.528054" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.527819" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.527804" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.528814" 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-08-10T02:10:09.528462" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.529611" 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-08-10T02:10:09.528994" 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-08-10T02:10:09.529828" elapsed="0.000183"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-08-10T02:10:09.527775" 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-08-10T02:10:09.530481" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.530226" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.530211" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.531216" 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-08-10T02:10:09.530868" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.531992" 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-08-10T02:10:09.531415" 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-08-10T02:10:09.532173" elapsed="0.000201"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-08-10T02:10:09.530181" 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-08-10T02:10:09.532825" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.532590" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.532575" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.533599" 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-08-10T02:10:09.533213" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.534370" 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-08-10T02:10:09.533779" 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-08-10T02:10:09.534554" elapsed="0.000182"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-08-10T02:10:09.532546" 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-08-10T02:10:09.535303" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.535064" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.534940" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.536062" 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-08-10T02:10:09.535714" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.536833" 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-08-10T02:10:09.536242" 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-08-10T02:10:09.537016" elapsed="0.000183"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-08-10T02:10:09.534911" 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-08-10T02:10:09.537694" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.537434" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.537418" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.538455" 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-08-10T02:10:09.538082" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.539208" 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-08-10T02:10:09.538635" 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-08-10T02:10:09.539409" elapsed="0.000183"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-08-10T02:10:09.537388" elapsed="0.002242"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-08-10T02:10:09.293547" elapsed="0.246113"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.540941" 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-08-10T02:10:09.539816" elapsed="0.001153"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.541062" elapsed="0.000036"/>
</return>
<msg time="2026-08-10T02:10:09.541232" 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-08-10T02:10:09.230991" elapsed="0.310268"/>
</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-08-10T02:10:09.542644" 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-08-10T02:10:09.542368" elapsed="0.000347">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-08-10T02:10:09.542809" 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-08-10T02:10:09.542007" elapsed="0.000828"/>
</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-08-10T02:10:09.543149" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.542905" elapsed="0.000302"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.543738" 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-08-10T02:10:09.543447" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.543231" elapsed="0.000569"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.542887" elapsed="0.000934"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.546150" 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-08-10T02:10:09.543971" elapsed="0.002205"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:09.546227" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:09.546398" 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-08-10T02:10:09.541658" elapsed="0.004765"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.547952" 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-08-10T02:10:09.547703" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.548401" 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-08-10T02:10:09.548147" elapsed="0.000670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.549212" 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-08-10T02:10:09.548968" elapsed="0.000287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.549676" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:09.549423" elapsed="0.000296"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:09.550544" 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-08-10T02:10:09.550324" elapsed="0.000246"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-08-10T02:10:09.550893" 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-08-10T02:10:09.550722" 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-08-10T02:10:09.551066" elapsed="0.000188"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.551669" 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-08-10T02:10:09.551426" elapsed="0.000286"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-08-10T02:10:09.551754" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:09.551905" 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-08-10T02:10:09.549922" elapsed="0.002007"/>
</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-08-10T02:10:09.582967" level="INFO">POST Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.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-08-10T02:10:09.583311" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=88', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:09.583591" 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-08-10T02:10:09.554195" elapsed="0.029456"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.552150" elapsed="0.031604"/>
</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-08-10T02:10:09.584157" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.583812" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.551980" elapsed="0.032410"/>
</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-08-10T02:10:09.589952" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:09.586764" elapsed="0.003252"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.586442" elapsed="0.003624"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.586393" elapsed="0.003707"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.593637" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:09.590518" elapsed="0.003182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.590175" elapsed="0.003573"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.590153" elapsed="0.003629"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.594610" 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-08-10T02:10:09.594068" elapsed="0.000569"/>
</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-08-10T02:10:09.594955" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.594706" elapsed="0.000306"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.595522" 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-08-10T02:10:09.595205" elapsed="0.000343"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.595035" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.594688" elapsed="0.000916"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.596138" 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-08-10T02:10:09.595774" elapsed="0.000390"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:09.596499" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.596233" elapsed="0.000323"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.597045" 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-08-10T02:10:09.596753" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.596580" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.596215" elapsed="0.000912"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:10:09.597275" elapsed="0.000369"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:10:09.598113" 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-08-10T02:10:09.597806" elapsed="0.000333"/>
</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-08-10T02:10:09.598292" elapsed="0.002215"/>
</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-08-10T02:10:09.585238" elapsed="0.015332"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:09.600746" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:09.600640" elapsed="0.000150"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.600623" elapsed="0.000188"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:10:09.603235" 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-08-10T02:10:09.600956" elapsed="0.002306"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:10:09.603310" elapsed="0.000045"/>
</return>
<msg time="2026-08-10T02:10:09.603482" 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-08-10T02:10:09.546753" elapsed="0.056754"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.603610" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:10:09.603759" 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-08-10T02:10:09.144887" elapsed="0.458897"/>
</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-08-10T02:10:09.604124" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.603888" elapsed="0.000304"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.603871" elapsed="0.000344"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.604248" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-group-2</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-08-10T02:10:09.142141" elapsed="0.462247"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:10:09.130737" elapsed="0.473708"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.605083" 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-08-10T02:10:09.604684" elapsed="0.000427"/>
</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-08-10T02:10:09.646917" 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-08-10T02:10:09.646547" elapsed="0.000398"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.647664" 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-08-10T02:10:09.647452" elapsed="0.000277">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-08-10T02:10:09.647821" 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-08-10T02:10:09.647105" elapsed="0.000740"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.648405" 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-08-10T02:10:09.648007" elapsed="0.000425"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.648728" 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-08-10T02:10:09.648879" 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-08-10T02:10:09.648594" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.649297" 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-08-10T02:10:09.649058" elapsed="0.000302"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.650370" 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-08-10T02:10:09.650090" elapsed="0.000339"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.650917" 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-08-10T02:10:09.650647" elapsed="0.000296"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.651710" 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-08-10T02:10:09.651306" elapsed="0.000430"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-08-10T02:10:09.652817" 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-08-10T02:10:09.652271" elapsed="0.000573"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-08-10T02:10:09.652935" elapsed="0.000034"/>
</return>
<msg time="2026-08-10T02:10:09.653096" 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-08-10T02:10:09.651927" elapsed="0.001194"/>
</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-08-10T02:10:09.653275" elapsed="0.000302"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:2</var>
<status status="PASS" start="2026-08-10T02:10:09.651169" elapsed="0.002450"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-08-10T02:10:09.650996" elapsed="0.002659"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:09.653698" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:09.653855" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:09.649766" elapsed="0.004114"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.649430" elapsed="0.004482"/>
</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-08-10T02:10:09.654093" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.653938" elapsed="0.000209"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.649411" elapsed="0.004757"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.654892" 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-08-10T02:10:09.654309" elapsed="0.000611"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.654968" 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-08-10T02:10:09.645900" elapsed="0.009190"/>
</kw>
<msg time="2026-08-10T02:10:09.655144" 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-08-10T02:10:09.633585" elapsed="0.021607"/>
</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-08-10T02:10:09.671022" 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-08-10T02:10:09.682895" 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/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-08-10T02:10:09.694798" elapsed="0.000043"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:09.695008" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:09.695179" 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-08-10T02:10:09.695575" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.695421" elapsed="0.000209"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:09.695406" elapsed="0.000247"/>
</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-08-10T02:10:09.695789" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:09.696004" 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-08-10T02:10:09.696168" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:09.695375" elapsed="0.000845"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:09.695254" elapsed="0.000992"/>
</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-08-10T02:10:09.696407" elapsed="0.000021"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:09.696483" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:09.696598" 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-08-10T02:10:09.629423" 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-08-10T02:10:09.707193" elapsed="0.000357"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.720524" 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-08-10T02:10:09.720127" elapsed="0.000425"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.721288" 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-08-10T02:10:09.721046" elapsed="0.000335">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-08-10T02:10:09.721483" 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-08-10T02:10:09.720713" elapsed="0.000794"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.722051" 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-08-10T02:10:09.721669" elapsed="0.000410"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.722391" 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-08-10T02:10:09.722539" 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-08-10T02:10:09.722237" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.722961" 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-08-10T02:10:09.722719" 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-08-10T02:10:09.723420" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.723100" elapsed="0.000379"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.723939" 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-08-10T02:10:09.723650" elapsed="0.000315"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.723503" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.723081" elapsed="0.000940"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.724609" 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-08-10T02:10:09.724164" elapsed="0.000473"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.724685" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:09.724836" 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-08-10T02:10:09.719506" elapsed="0.005355"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.738035" 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-08-10T02:10:09.737655" elapsed="0.000408"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.738802" 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-08-10T02:10:09.738595" 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-08-10T02:10:09.738957" 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-08-10T02:10:09.738224" elapsed="0.000757"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.739570" 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-08-10T02:10:09.739141" elapsed="0.000456"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.739891" 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-08-10T02:10:09.740012" 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-08-10T02:10:09.739759" elapsed="0.000278"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.740450" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:09.740190" elapsed="0.000304"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:09.740844" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.740560" elapsed="0.000341"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.741376" 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-08-10T02:10:09.741070" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.740926" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.740541" elapsed="0.000918"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.742018" 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-08-10T02:10:09.741603" elapsed="0.000441"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.742093" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:09.742241" 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-08-10T02:10:09.736990" elapsed="0.005276"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.755177" 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-08-10T02:10:09.754805" elapsed="0.000400"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.755953" 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-08-10T02:10:09.755740" elapsed="0.000276">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-08-10T02:10:09.756109" 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-08-10T02:10:09.755407" elapsed="0.000726"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.756693" 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-08-10T02:10:09.756294" elapsed="0.000426"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:09.757010" 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-08-10T02:10:09.757167" 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-08-10T02:10:09.756878" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.757609" 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-08-10T02:10:09.757366" 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-08-10T02:10:09.758008" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.757722" elapsed="0.000344"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.758544" 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-08-10T02:10:09.758235" elapsed="0.000335"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.758091" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.757704" elapsed="0.000923"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.759337" 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-08-10T02:10:09.758771" elapsed="0.000627"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:09.759449" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:09.759605" 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-08-10T02:10:09.754244" elapsed="0.005387"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.760031" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:09.759792" elapsed="0.000265"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.760590" 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-08-10T02:10:09.760211" elapsed="0.000405"/>
</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-08-10T02:10:09.761224" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:09.760990" elapsed="0.000290"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.760975" elapsed="0.000329"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.761817" 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-08-10T02:10:09.761467" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.762754" 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-08-10T02:10:09.761996" elapsed="0.000787"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.762939" elapsed="0.000192"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-08-10T02:10:09.760945" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.763641" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.763364" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.763330" elapsed="0.000559"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.764405" 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-08-10T02:10:09.764032" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.765186" 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-08-10T02:10:09.764586" 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-08-10T02:10:09.765399" elapsed="0.000196"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-08-10T02:10:09.763302" 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-08-10T02:10:09.766081" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.765809" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.765794" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.766845" 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-08-10T02:10:09.766494" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.767629" 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-08-10T02:10:09.767025" 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-08-10T02:10:09.767813" elapsed="0.000182"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-08-10T02:10:09.765765" 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-08-10T02:10:09.768464" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.768209" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.768194" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.769197" 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-08-10T02:10:09.768852" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.769963" 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-08-10T02:10:09.769394" 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-08-10T02:10:09.770144" elapsed="0.000180"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-08-10T02:10:09.768165" 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-08-10T02:10:09.770794" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.770561" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.770546" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.771572" 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-08-10T02:10:09.771176" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.772321" 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-08-10T02:10:09.771752" 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-08-10T02:10:09.772525" elapsed="0.000180"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-08-10T02:10:09.770517" 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-08-10T02:10:09.773153" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.772920" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.772906" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.773904" 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-08-10T02:10:09.773560" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.774664" 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-08-10T02:10:09.774081" 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-08-10T02:10:09.774844" elapsed="0.000179"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-08-10T02:10:09.772877" elapsed="0.002182"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.775504" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.775235" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.775221" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.776232" 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-08-10T02:10:09.775890" elapsed="0.000368"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.777002" 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-08-10T02:10:09.776429" 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-08-10T02:10:09.777220" elapsed="0.000204"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-08-10T02:10:09.775192" 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-08-10T02:10:09.777878" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.777642" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.777626" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.778642" 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-08-10T02:10:09.778268" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.779574" 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-08-10T02:10:09.778824" elapsed="0.000780"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.779760" elapsed="0.000181"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-08-10T02:10:09.777596" 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-08-10T02:10:09.780410" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.780155" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.780140" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.781145" 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-08-10T02:10:09.780798" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.781915" 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-08-10T02:10:09.781325" 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-08-10T02:10:09.782099" elapsed="0.000179"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-08-10T02:10:09.780111" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.782750" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.782515" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.782500" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.783500" 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-08-10T02:10:09.783133" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.787150" 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-08-10T02:10:09.786550" 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-08-10T02:10:09.787336" elapsed="0.000201"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-08-10T02:10:09.782471" elapsed="0.005103"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.788019" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.787785" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.787770" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.788797" 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-08-10T02:10:09.788426" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.789566" 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-08-10T02:10:09.788977" 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-08-10T02:10:09.789746" elapsed="0.000179"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-08-10T02:10:09.787741" 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-08-10T02:10:09.790391" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.790139" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.790124" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.791123" 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-08-10T02:10:09.790778" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.791979" 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-08-10T02:10:09.791379" 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-08-10T02:10:09.792161" elapsed="0.000202"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-08-10T02:10:09.790095" 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-08-10T02:10:09.792814" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.792581" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.792567" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.793577" 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-08-10T02:10:09.793198" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.794335" 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-08-10T02:10:09.793756" 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-08-10T02:10:09.794538" elapsed="0.000180"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-08-10T02:10:09.792538" 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-08-10T02:10:09.795165" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.794932" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.794917" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.795965" 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-08-10T02:10:09.795572" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.796745" 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-08-10T02:10:09.796145" 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-08-10T02:10:09.796925" elapsed="0.000180"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-08-10T02:10:09.794889" 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-08-10T02:10:09.797573" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.797320" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.797304" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.798460" 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-08-10T02:10:09.797972" elapsed="0.000515"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.799210" 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-08-10T02:10:09.798642" 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-08-10T02:10:09.799410" elapsed="0.000185"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-08-10T02:10:09.797275" 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-08-10T02:10:09.800069" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.799832" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.799817" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.800830" 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-08-10T02:10:09.800478" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.801599" 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-08-10T02:10:09.801008" 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-08-10T02:10:09.801810" elapsed="0.000188"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-08-10T02:10:09.799787" 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-08-10T02:10:09.802485" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.802212" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.802198" elapsed="0.000574"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.803268" 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-08-10T02:10:09.802917" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.804077" 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-08-10T02:10:09.803467" 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-08-10T02:10:09.804264" elapsed="0.000204"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-08-10T02:10:09.802169" 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-08-10T02:10:09.804918" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.804685" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.804671" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.805667" 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-08-10T02:10:09.805300" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.806432" 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-08-10T02:10:09.805844" 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-08-10T02:10:09.806612" elapsed="0.000181"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-08-10T02:10:09.804642" elapsed="0.002187"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.807238" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.807006" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.806991" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.808006" 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-08-10T02:10:09.807642" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.808770" 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-08-10T02:10:09.808183" 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-08-10T02:10:09.808949" elapsed="0.000181"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-08-10T02:10:09.806963" elapsed="0.002203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.809632" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.809360" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.809326" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.810377" 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-08-10T02:10:09.810015" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.811124" 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-08-10T02:10:09.810556" 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-08-10T02:10:09.811303" elapsed="0.000200"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-08-10T02:10:09.809298" 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-08-10T02:10:09.811985" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.811718" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.811702" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.812737" 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-08-10T02:10:09.812388" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.813507" 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-08-10T02:10:09.812916" 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-08-10T02:10:09.813688" elapsed="0.000180"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-08-10T02:10:09.811672" 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-08-10T02:10:09.814378" elapsed="0.000299"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.814122" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.814107" elapsed="0.000633"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.815231" 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-08-10T02:10:09.814881" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.816079" 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-08-10T02:10:09.815474" 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-08-10T02:10:09.816262" elapsed="0.000202"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-08-10T02:10:09.814078" elapsed="0.002424"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.816914" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.816678" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.816664" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.817664" 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-08-10T02:10:09.817298" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.818436" 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-08-10T02:10:09.817843" 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-08-10T02:10:09.818617" elapsed="0.000181"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-08-10T02:10:09.816635" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.819246" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.819012" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.818997" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.820028" 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-08-10T02:10:09.819653" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.820809" 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-08-10T02:10:09.820210" 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-08-10T02:10:09.820989" elapsed="0.000181"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-08-10T02:10:09.818968" 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-08-10T02:10:09.821637" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.821403" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.821388" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.822386" 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-08-10T02:10:09.822021" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.823138" 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-08-10T02:10:09.822571" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.823317" elapsed="0.000202"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-08-10T02:10:09.821357" elapsed="0.002198"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.823983" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.823734" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.823719" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.824734" 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-08-10T02:10:09.824388" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.825498" 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-08-10T02:10:09.824910" 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-08-10T02:10:09.825716" elapsed="0.000184"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-08-10T02:10:09.823690" 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-08-10T02:10:09.826366" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.826115" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.826100" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.827094" 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-08-10T02:10:09.826750" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.827869" 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-08-10T02:10:09.827272" 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-08-10T02:10:09.828089" elapsed="0.000182"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-08-10T02:10:09.826071" 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-08-10T02:10:09.828740" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.828507" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.828492" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.829504" 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-08-10T02:10:09.829133" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.830252" 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-08-10T02:10:09.829683" 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-08-10T02:10:09.830452" elapsed="0.000181"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-08-10T02:10:09.828463" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.831189" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.830848" elapsed="0.000581"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.830834" elapsed="0.000620"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.831947" 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-08-10T02:10:09.831600" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.832737" 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-08-10T02:10:09.832148" 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-08-10T02:10:09.832919" elapsed="0.000180"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-08-10T02:10:09.830805" 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-08-10T02:10:09.833567" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.833313" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.833298" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.834297" 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-08-10T02:10:09.833951" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.835061" 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-08-10T02:10:09.834497" elapsed="0.000592"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.835242" elapsed="0.000199"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-08-10T02:10:09.833269" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.835890" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.835657" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.835642" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.836681" 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-08-10T02:10:09.836303" elapsed="0.000455"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.837636" 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-08-10T02:10:09.836951" 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-08-10T02:10:09.837823" elapsed="0.000184"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-08-10T02:10:09.835613" 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-08-10T02:10:09.838491" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.838221" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.838206" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.839228" 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-08-10T02:10:09.838881" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.839994" 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-08-10T02:10:09.839425" 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-08-10T02:10:09.840197" elapsed="0.000201"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-08-10T02:10:09.838177" 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-08-10T02:10:09.840846" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.840614" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.840599" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.841595" 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-08-10T02:10:09.841228" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.842362" 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-08-10T02:10:09.841772" 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-08-10T02:10:09.842558" elapsed="0.000181"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-08-10T02:10:09.840570" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.843183" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.842951" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.842935" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.843931" 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-08-10T02:10:09.843586" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.844731" 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-08-10T02:10:09.844138" 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-08-10T02:10:09.844910" elapsed="0.000179"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-08-10T02:10:09.842906" 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-08-10T02:10:09.845552" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.845300" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.845285" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.846284" 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-08-10T02:10:09.845939" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.847050" 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-08-10T02:10:09.846483" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.847229" elapsed="0.000199"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-08-10T02:10:09.845256" 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-08-10T02:10:09.848030" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.847752" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.847626" elapsed="0.000676"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.848816" 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-08-10T02:10:09.848466" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.849581" 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-08-10T02:10:09.848993" 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-08-10T02:10:09.849761" elapsed="0.000182"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-08-10T02:10:09.847596" 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-08-10T02:10:09.850404" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.850152" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.850138" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.851160" 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-08-10T02:10:09.850802" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.851982" 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-08-10T02:10:09.851368" 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-08-10T02:10:09.852198" elapsed="0.000213"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-08-10T02:10:09.850110" 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-08-10T02:10:09.852878" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.852638" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.852624" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.853646" 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-08-10T02:10:09.853272" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.854417" 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-08-10T02:10:09.853825" 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-08-10T02:10:09.854598" elapsed="0.000182"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-08-10T02:10:09.852589" 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-08-10T02:10:09.855230" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.854995" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.854980" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.855986" 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-08-10T02:10:09.855637" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.856800" 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-08-10T02:10:09.856183" 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-08-10T02:10:09.857002" elapsed="0.000186"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-08-10T02:10:09.854951" 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-08-10T02:10:09.857704" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.857441" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.857420" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.858513" 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-08-10T02:10:09.858093" elapsed="0.000448"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.859271" 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-08-10T02:10:09.858695" 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-08-10T02:10:09.859516" elapsed="0.000185"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-08-10T02:10:09.857381" 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-08-10T02:10:09.860158" elapsed="0.000291"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.859923" elapsed="0.000573"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.859908" elapsed="0.000613"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.861018" 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-08-10T02:10:09.860665" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.861787" 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-08-10T02:10:09.861196" 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-08-10T02:10:09.861968" elapsed="0.000182"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-08-10T02:10:09.859878" 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-08-10T02:10:09.862614" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.862381" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.862365" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.863364" 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-08-10T02:10:09.862998" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.864115" 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-08-10T02:10:09.863548" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.864313" elapsed="0.000202"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-08-10T02:10:09.862318" 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-08-10T02:10:09.865092" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.864841" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.864714" elapsed="0.000642"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.865857" 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-08-10T02:10:09.865507" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.866636" 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-08-10T02:10:09.866037" 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-08-10T02:10:09.866817" elapsed="0.000182"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-08-10T02:10:09.864685" 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-08-10T02:10:09.867464" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.867213" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.867197" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.868192" 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-08-10T02:10:09.867848" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.868994" 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-08-10T02:10:09.868422" 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-08-10T02:10:09.869175" elapsed="0.000200"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-08-10T02:10:09.867168" 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-08-10T02:10:09.869831" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.869597" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.869582" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.870581" 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-08-10T02:10:09.870215" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.871389" 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-08-10T02:10:09.870797" 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-08-10T02:10:09.871572" elapsed="0.000181"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-08-10T02:10:09.869553" 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-08-10T02:10:09.872200" elapsed="0.000218"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.871968" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.871954" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.872968" 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-08-10T02:10:09.872621" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.873736" 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-08-10T02:10:09.873145" 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-08-10T02:10:09.873917" elapsed="0.000180"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-08-10T02:10:09.871925" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.874563" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.874310" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.874295" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.875289" 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-08-10T02:10:09.874945" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.876052" 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-08-10T02:10:09.875485" 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-08-10T02:10:09.876232" elapsed="0.000238"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-08-10T02:10:09.874266" 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-08-10T02:10:09.876926" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.876687" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.876672" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.877685" 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-08-10T02:10:09.877312" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.878453" 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-08-10T02:10:09.877864" 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-08-10T02:10:09.878633" elapsed="0.000178"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-08-10T02:10:09.876643" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.879257" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.879026" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.879010" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.880012" 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-08-10T02:10:09.879666" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.880796" 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-08-10T02:10:09.880189" 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-08-10T02:10:09.880976" elapsed="0.000180"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-08-10T02:10:09.878982" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.881743" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.881501" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.881377" elapsed="0.000647"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.882543" 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-08-10T02:10:09.882168" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.883290" 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-08-10T02:10:09.882722" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.883491" elapsed="0.000182"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-08-10T02:10:09.881328" 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-08-10T02:10:09.884120" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.883889" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.883874" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.884897" 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-08-10T02:10:09.884550" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.885666" 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-08-10T02:10:09.885075" 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-08-10T02:10:09.885844" elapsed="0.000180"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-08-10T02:10:09.883845" 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-08-10T02:10:09.886490" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.886237" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.886222" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.887220" 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-08-10T02:10:09.886874" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.887990" 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-08-10T02:10:09.887417" 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-08-10T02:10:09.888170" elapsed="0.000201"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-08-10T02:10:09.886193" 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-08-10T02:10:09.888835" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.888602" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.888587" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.889593" 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-08-10T02:10:09.889220" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.890359" 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-08-10T02:10:09.889773" 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-08-10T02:10:09.890542" elapsed="0.000179"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-08-10T02:10:09.888557" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.891166" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.890933" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.890919" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.891915" 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-08-10T02:10:09.891571" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.892724" 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-08-10T02:10:09.892092" 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-08-10T02:10:09.892904" elapsed="0.000182"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-08-10T02:10:09.890890" 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-08-10T02:10:09.893611" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.893364" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.893326" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.894357" 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-08-10T02:10:09.893994" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.895143" 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-08-10T02:10:09.894563" 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-08-10T02:10:09.895322" elapsed="0.000203"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-08-10T02:10:09.893297" 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-08-10T02:10:09.895970" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.895738" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.895723" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.896738" 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-08-10T02:10:09.896373" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.897505" 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-08-10T02:10:09.896916" 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-08-10T02:10:09.897683" elapsed="0.000180"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-08-10T02:10:09.895694" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.898439" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.898182" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.898063" elapsed="0.000623"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.899172" 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-08-10T02:10:09.898827" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.899940" 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-08-10T02:10:09.899368" 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-08-10T02:10:09.900120" elapsed="0.000181"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-08-10T02:10:09.898034" 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-08-10T02:10:09.904040" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.903627" elapsed="0.000679"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.900523" elapsed="0.003808"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.904883" 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-08-10T02:10:09.904497" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.905657" 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-08-10T02:10:09.905060" 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-08-10T02:10:09.905838" elapsed="0.000181"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-08-10T02:10:09.900494" elapsed="0.005561"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.906486" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.906230" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.906215" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.907212" 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-08-10T02:10:09.906868" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.907982" 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-08-10T02:10:09.907407" 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-08-10T02:10:09.908208" elapsed="0.000202"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-08-10T02:10:09.906187" 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-08-10T02:10:09.908901" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.908663" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.908643" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.909661" 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-08-10T02:10:09.909290" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.910423" 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-08-10T02:10:09.909838" 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-08-10T02:10:09.910607" elapsed="0.000179"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-08-10T02:10:09.908582" 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-08-10T02:10:09.911231" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.911000" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.910985" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.911977" 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-08-10T02:10:09.911634" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.912761" 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-08-10T02:10:09.912152" 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-08-10T02:10:09.912940" elapsed="0.000189"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-08-10T02:10:09.910957" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.913608" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.913362" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.913328" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.914339" 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-08-10T02:10:09.913990" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.915099" 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-08-10T02:10:09.914532" 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-08-10T02:10:09.915276" elapsed="0.000200"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-08-10T02:10:09.913299" 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-08-10T02:10:09.915924" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.915691" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.915676" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.916707" 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-08-10T02:10:09.916307" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.917496" 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-08-10T02:10:09.916886" 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-08-10T02:10:09.917674" elapsed="0.000180"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-08-10T02:10:09.915647" 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-08-10T02:10:09.918434" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.918177" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.918054" elapsed="0.000626"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.919166" 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-08-10T02:10:09.918821" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.919974" 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-08-10T02:10:09.919401" 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-08-10T02:10:09.920153" elapsed="0.000185"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-08-10T02:10:09.918026" elapsed="0.002364"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.920818" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.920569" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.920554" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.921584" 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-08-10T02:10:09.921208" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.922327" 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-08-10T02:10:09.921762" 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-08-10T02:10:09.922527" elapsed="0.000182"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-08-10T02:10:09.920525" 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-08-10T02:10:09.923154" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.922923" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.922908" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.923902" 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-08-10T02:10:09.923558" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.924678" 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-08-10T02:10:09.924078" 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-08-10T02:10:09.924934" elapsed="0.000191"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-08-10T02:10:09.922879" 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-08-10T02:10:09.925606" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.925367" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.925331" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.926357" 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-08-10T02:10:09.925991" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.927104" 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-08-10T02:10:09.926538" 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-08-10T02:10:09.927282" elapsed="0.000202"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-08-10T02:10:09.925302" 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-08-10T02:10:09.927928" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.927697" elapsed="0.000448"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.927682" elapsed="0.000487"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.928673" 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-08-10T02:10:09.928310" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.929481" 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-08-10T02:10:09.928883" 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-08-10T02:10:09.929663" elapsed="0.000181"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-08-10T02:10:09.927653" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.930327" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.930058" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.930042" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.931089" 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-08-10T02:10:09.930737" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.931864" 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-08-10T02:10:09.931272" 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-08-10T02:10:09.932044" elapsed="0.000182"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-08-10T02:10:09.930013" 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-08-10T02:10:09.932697" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.932463" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.932448" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.933500" 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-08-10T02:10:09.933121" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.934247" 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-08-10T02:10:09.933679" 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-08-10T02:10:09.934447" elapsed="0.000182"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-08-10T02:10:09.932418" 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-08-10T02:10:09.935719" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.935475" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.934830" elapsed="0.001134"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.936471" 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-08-10T02:10:09.936104" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.937244" 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-08-10T02:10:09.936650" 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-08-10T02:10:09.937445" elapsed="0.000184"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-08-10T02:10:09.934801" elapsed="0.002865"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.938076" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.937843" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.937829" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.938826" 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-08-10T02:10:09.938478" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.939592" 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-08-10T02:10:09.939003" 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-08-10T02:10:09.939773" elapsed="0.000181"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-08-10T02:10:09.937800" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.940421" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.940168" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.940153" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.941184" 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-08-10T02:10:09.940806" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.941964" 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-08-10T02:10:09.941384" 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-08-10T02:10:09.942179" elapsed="0.000203"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-08-10T02:10:09.940124" 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-08-10T02:10:09.942830" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.942595" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.942581" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.943577" 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-08-10T02:10:09.943211" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.944322" 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-08-10T02:10:09.943755" 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-08-10T02:10:09.944523" elapsed="0.000183"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-08-10T02:10:09.942552" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.945189" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.944947" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.944931" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.945950" 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-08-10T02:10:09.945605" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.946717" 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-08-10T02:10:09.946128" 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-08-10T02:10:09.946897" elapsed="0.000180"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-08-10T02:10:09.944875" 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-08-10T02:10:09.947545" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.947292" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.947277" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.948271" 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-08-10T02:10:09.947927" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.949073" 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-08-10T02:10:09.948469" 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-08-10T02:10:09.949256" elapsed="0.000208"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-08-10T02:10:09.947248" 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-08-10T02:10:09.949915" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.949680" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.949665" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.950664" 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-08-10T02:10:09.950298" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:09.951432" 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-08-10T02:10:09.950842" 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-08-10T02:10:09.951617" elapsed="0.000179"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-08-10T02:10:09.949636" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:09.999667" elapsed="0.000286"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:09.999206" elapsed="0.000808"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:09.951996" elapsed="0.048048"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.000649" 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-08-10T02:10:10.000198" elapsed="0.000480"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.001570" 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-08-10T02:10:10.000916" 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-08-10T02:10:10.001756" elapsed="0.000187"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-08-10T02:10:09.951967" elapsed="0.050014"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.002460" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.002198" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.002183" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.003211" 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-08-10T02:10:10.002861" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.004000" 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-08-10T02:10:10.003425" 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-08-10T02:10:10.004182" elapsed="0.000201"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-08-10T02:10:10.002149" 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-08-10T02:10:10.004832" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.004598" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.004583" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.005611" 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-08-10T02:10:10.005216" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.006382" 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-08-10T02:10:10.005791" 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-08-10T02:10:10.006564" elapsed="0.000182"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-08-10T02:10:10.004554" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.007193" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.006960" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.006945" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.007944" 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-08-10T02:10:10.007595" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.008714" 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-08-10T02:10:10.008122" 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-08-10T02:10:10.008894" elapsed="0.000184"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-08-10T02:10:10.006915" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.009579" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.009294" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.009280" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.010314" 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-08-10T02:10:10.009964" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.011083" 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-08-10T02:10:10.010513" 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-08-10T02:10:10.011263" elapsed="0.000219"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-08-10T02:10:10.009251" 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-08-10T02:10:10.011932" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.011699" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.011684" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.012734" 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-08-10T02:10:10.012380" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.013633" 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-08-10T02:10:10.012914" elapsed="0.000748"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.013815" elapsed="0.000182"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-08-10T02:10:10.011655" elapsed="0.002380"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.014471" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.014212" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.014198" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.015206" 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-08-10T02:10:10.014857" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.015974" 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-08-10T02:10:10.015403" 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-08-10T02:10:10.016154" elapsed="0.000199"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-08-10T02:10:10.014169" 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-08-10T02:10:10.016806" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.016571" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.016556" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.017571" 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-08-10T02:10:10.017190" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.018319" 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-08-10T02:10:10.017750" 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-08-10T02:10:10.018521" elapsed="0.000180"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-08-10T02:10:10.016527" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.019147" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.018915" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.018900" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.019898" 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-08-10T02:10:10.019551" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.020668" 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-08-10T02:10:10.020074" 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-08-10T02:10:10.020848" elapsed="0.000178"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-08-10T02:10:10.018871" elapsed="0.002192"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.021496" elapsed="0.003287"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.021241" elapsed="0.003582"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.021227" elapsed="0.003620"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.025378" 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-08-10T02:10:10.025001" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.026155" 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-08-10T02:10:10.025582" 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-08-10T02:10:10.026338" elapsed="0.000198"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-08-10T02:10:10.021198" elapsed="0.005408"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.027023" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.026787" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.026772" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.027779" 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-08-10T02:10:10.027428" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.028550" 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-08-10T02:10:10.027959" 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-08-10T02:10:10.028732" elapsed="0.000182"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-08-10T02:10:10.026743" 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-08-10T02:10:10.029381" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.029130" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.029115" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.030150" 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-08-10T02:10:10.029799" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.030922" 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-08-10T02:10:10.030328" 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-08-10T02:10:10.031101" elapsed="0.000182"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-08-10T02:10:10.029086" 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-08-10T02:10:10.031752" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.031519" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.031504" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.032630" 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-08-10T02:10:10.032136" elapsed="0.000520"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.033401" 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-08-10T02:10:10.032810" 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-08-10T02:10:10.033586" elapsed="0.000197"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-08-10T02:10:10.031475" 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-08-10T02:10:10.034231" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.033998" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.033983" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.034985" 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-08-10T02:10:10.034637" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.035750" 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-08-10T02:10:10.035162" 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-08-10T02:10:10.035929" elapsed="0.000181"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-08-10T02:10:10.033954" elapsed="0.002192"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.036587" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.036324" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.036309" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.037319" 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-08-10T02:10:10.036974" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.038116" 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-08-10T02:10:10.037518" 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-08-10T02:10:10.038358" elapsed="0.000183"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-08-10T02:10:10.036280" 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-08-10T02:10:10.038990" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.038755" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.038740" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.039745" 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-08-10T02:10:10.039395" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.040519" 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-08-10T02:10:10.039924" 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-08-10T02:10:10.040700" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-08-10T02:10:10.038711" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.041329" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.041096" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.041081" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.042097" 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-08-10T02:10:10.041748" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.042866" 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-08-10T02:10:10.042276" 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-08-10T02:10:10.043046" elapsed="0.000179"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-08-10T02:10:10.041052" 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-08-10T02:10:10.043691" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.043460" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.043445" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.044439" 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-08-10T02:10:10.044074" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.045184" 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-08-10T02:10:10.044617" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.045381" elapsed="0.000183"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-08-10T02:10:10.043415" elapsed="0.002187"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.046052" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.045817" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.045802" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.046811" 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-08-10T02:10:10.046460" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.047578" 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-08-10T02:10:10.046990" 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-08-10T02:10:10.047757" elapsed="0.000180"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-08-10T02:10:10.045771" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.048402" elapsed="0.000303"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.048152" elapsed="0.000592"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.048137" elapsed="0.000631"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.049257" 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-08-10T02:10:10.048909" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.050086" 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-08-10T02:10:10.049493" 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-08-10T02:10:10.050268" elapsed="0.000212"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-08-10T02:10:10.048108" 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-08-10T02:10:10.050935" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.050701" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.050686" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.051696" 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-08-10T02:10:10.051316" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.052462" 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-08-10T02:10:10.051875" 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-08-10T02:10:10.052643" elapsed="0.000179"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-08-10T02:10:10.050657" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.053269" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.053037" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.053022" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.054055" 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-08-10T02:10:10.053674" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.054821" 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-08-10T02:10:10.054233" 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-08-10T02:10:10.055002" elapsed="0.000180"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-08-10T02:10:10.052993" 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-08-10T02:10:10.055650" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.055419" elapsed="0.000448"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.055404" elapsed="0.000488"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.056396" 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-08-10T02:10:10.056031" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.057140" 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-08-10T02:10:10.056574" 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-08-10T02:10:10.057321" elapsed="0.000205"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-08-10T02:10:10.055373" elapsed="0.002190"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-08-10T02:10:09.760671" elapsed="0.296923"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.058894" 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-08-10T02:10:10.057752" elapsed="0.001170"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.058984" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:10:10.059159" 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-08-10T02:10:09.706293" elapsed="0.352893"/>
</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-08-10T02:10:10.060703" 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-08-10T02:10:10.060400" elapsed="0.000385">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-08-10T02:10:10.060880" 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-08-10T02:10:10.060014" elapsed="0.000890"/>
</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-08-10T02:10:10.061221" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.060974" elapsed="0.000304"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.061838" 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-08-10T02:10:10.061514" elapsed="0.000353"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.061301" elapsed="0.000601"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.060956" elapsed="0.000968"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.064426" 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-08-10T02:10:10.062077" elapsed="0.002377"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:10.064506" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:10.064662" 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-08-10T02:10:10.059642" elapsed="0.005044"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.066259" 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-08-10T02:10:10.066006" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.066723" 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-08-10T02:10:10.066481" elapsed="0.000656"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.067570" 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-08-10T02:10:10.067291" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.068009" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.067766" elapsed="0.000286"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:10.068885" 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-08-10T02:10:10.068689" elapsed="0.000222"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-08-10T02:10:10.069234" 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-08-10T02:10:10.069061" elapsed="0.000198"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.069426" elapsed="0.000199"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.070055" 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-08-10T02:10:10.069778" elapsed="0.000320"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-08-10T02:10:10.070142" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:10.070297" 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-08-10T02:10:10.068259" elapsed="0.002063"/>
</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-08-10T02:10:10.097952" level="INFO">POST Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.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-08-10T02:10:10.098143" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=88', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:10.098260" 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-08-10T02:10:10.072484" elapsed="0.025803"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.070419" elapsed="0.027914"/>
</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-08-10T02:10:10.098547" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.098387" elapsed="0.000226"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.070394" elapsed="0.028241"/>
</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-08-10T02:10:10.101914" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.099683" elapsed="0.002273"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.099462" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.099444" elapsed="0.002571"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.104635" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.102305" elapsed="0.002375"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.102068" elapsed="0.002647"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.102052" elapsed="0.002687"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.105312" 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-08-10T02:10:10.104924" elapsed="0.000434"/>
</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-08-10T02:10:10.105679" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.105427" elapsed="0.000309"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.106259" 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-08-10T02:10:10.105930" elapsed="0.000356"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.105759" elapsed="0.000568"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.105410" elapsed="0.000956"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.106906" 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-08-10T02:10:10.106537" elapsed="0.000396"/>
</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-08-10T02:10:10.107242" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.107000" elapsed="0.000297"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.107804" 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-08-10T02:10:10.107511" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.107321" elapsed="0.000544"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.106983" elapsed="0.000903"/>
</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-08-10T02:10:10.108033" elapsed="0.000363"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:10:10.108836" 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-08-10T02:10:10.108558" elapsed="0.000303"/>
</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-08-10T02:10:10.109015" elapsed="0.002210"/>
</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-08-10T02:10:10.099002" elapsed="0.012285"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:10.111484" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:10.111377" elapsed="0.000152"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.111358" elapsed="0.000193"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:10:10.113929" 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-08-10T02:10:10.111694" elapsed="0.002262"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:10:10.114003" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:10.114156" 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-08-10T02:10:10.065016" elapsed="0.049197"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.114319" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:10:10.114492" 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-08-10T02:10:09.618590" elapsed="0.495927"/>
</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-08-10T02:10:10.114856" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.114621" elapsed="0.000303"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.114604" elapsed="0.000344"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.114980" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-group-2</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-08-10T02:10:09.616020" elapsed="0.499082"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-08-10T02:10:09.604540" elapsed="0.510609"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.115813" 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-08-10T02:10:10.115414" elapsed="0.000427"/>
</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-08-10T02:10:10.157235" 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-08-10T02:10:10.156861" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.158015" 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-08-10T02:10:10.157780" elapsed="0.000311">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-08-10T02:10:10.158184" 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-08-10T02:10:10.157446" elapsed="0.000762"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.158792" 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-08-10T02:10:10.158392" elapsed="0.000427"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.159111" 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-08-10T02:10:10.159274" 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-08-10T02:10:10.158976" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.159717" 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-08-10T02:10:10.159476" elapsed="0.000285"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.160711" 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-08-10T02:10:10.160457" elapsed="0.000298"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.161169" 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-08-10T02:10:10.160911" elapsed="0.000283"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.161925" 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-08-10T02:10:10.161570" elapsed="0.000381"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-08-10T02:10:10.166038" 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-08-10T02:10:10.162518" elapsed="0.003553"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-08-10T02:10:10.166192" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:10:10.166396" 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-08-10T02:10:10.162135" elapsed="0.004289"/>
</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-08-10T02:10:10.166606" elapsed="0.000277"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:3</var>
<status status="PASS" start="2026-08-10T02:10:10.161436" elapsed="0.005490"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-08-10T02:10:10.161245" elapsed="0.005716"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:10.167005" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:10:10.167159" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:10.160117" elapsed="0.007068"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.159826" elapsed="0.007390"/>
</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-08-10T02:10:10.167411" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.167240" elapsed="0.000233"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.159808" elapsed="0.007686"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.168172" 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-08-10T02:10:10.167638" elapsed="0.000561"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.168247" 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-08-10T02:10:10.156220" elapsed="0.012169"/>
</kw>
<msg time="2026-08-10T02:10:10.168444" 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-08-10T02:10:10.143988" elapsed="0.024503"/>
</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-08-10T02:10:10.180629" 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-08-10T02:10:10.192509" 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-08-10T02:10:10.204372" 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-08-10T02:10:10.204575" elapsed="0.000020"/>
</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-08-10T02:10:10.204745" 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-08-10T02:10:10.205115" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.204971" elapsed="0.000198"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:10.204957" elapsed="0.000234"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:10.205328" elapsed="0.000037"/>
</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-08-10T02:10:10.205548" 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-08-10T02:10:10.205711" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:10.204929" elapsed="0.000834"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:10.204828" elapsed="0.000961"/>
</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-08-10T02:10:10.205932" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:10.206006" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:10.206121" 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-08-10T02:10:10.139885" elapsed="0.066262"/>
</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-08-10T02:10:10.216745" elapsed="0.000334"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.229971" 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-08-10T02:10:10.229597" elapsed="0.000403"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.230723" 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-08-10T02:10:10.230514" elapsed="0.000271">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-08-10T02:10:10.230879" 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-08-10T02:10:10.230161" elapsed="0.000742"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.231507" 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-08-10T02:10:10.231095" elapsed="0.000440"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.231825" 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-08-10T02:10:10.231949" 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-08-10T02:10:10.231693" elapsed="0.000281"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.232389" 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-08-10T02:10:10.232129" elapsed="0.000305"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:10.232790" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.232503" elapsed="0.000344"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.233308" 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-08-10T02:10:10.233017" elapsed="0.000335"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.232872" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.232484" elapsed="0.000926"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.233974" 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-08-10T02:10:10.233554" elapsed="0.000448"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.234050" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:10.234200" 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-08-10T02:10:10.228963" elapsed="0.005262"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.247432" 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-08-10T02:10:10.247019" elapsed="0.000442"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.248159" 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-08-10T02:10:10.247954" elapsed="0.000268">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-08-10T02:10:10.248314" 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-08-10T02:10:10.247624" elapsed="0.000732"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.248902" 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-08-10T02:10:10.248524" elapsed="0.000405"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.249216" 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-08-10T02:10:10.249358" 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-08-10T02:10:10.249084" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.249792" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.249540" elapsed="0.000296"/>
</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-08-10T02:10:10.250189" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.249903" elapsed="0.000344"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.250735" 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-08-10T02:10:10.250444" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.250271" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.249885" elapsed="0.000933"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.251455" 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-08-10T02:10:10.250960" elapsed="0.000523"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.251532" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:10.251683" 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-08-10T02:10:10.246396" elapsed="0.005313"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.264677" 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-08-10T02:10:10.264280" elapsed="0.000425"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.265424" 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-08-10T02:10:10.265194" elapsed="0.000301">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-08-10T02:10:10.265590" 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-08-10T02:10:10.264866" elapsed="0.000749"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.266154" 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-08-10T02:10:10.265778" elapsed="0.000403"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.266493" 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-08-10T02:10:10.266651" 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-08-10T02:10:10.266357" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.267074" 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-08-10T02:10:10.266833" 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-08-10T02:10:10.267536" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.267186" elapsed="0.000410"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.268055" 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-08-10T02:10:10.267765" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.267620" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.267168" elapsed="0.000970"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.268875" 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-08-10T02:10:10.268280" elapsed="0.000624"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.268953" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:10.269107" 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-08-10T02:10:10.263726" elapsed="0.005407"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.269558" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:10.269294" elapsed="0.000289"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.270100" 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-08-10T02:10:10.269739" elapsed="0.000386"/>
</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-08-10T02:10:10.270763" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.270531" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.270516" elapsed="0.000328"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.271336" 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-08-10T02:10:10.270984" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.272331" 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-08-10T02:10:10.271573" 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-08-10T02:10:10.272550" elapsed="0.000194"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-08-10T02:10:10.270486" 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-08-10T02:10:10.273197" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.272961" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.272947" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.273953" 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-08-10T02:10:10.273604" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.274747" 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-08-10T02:10:10.274134" 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-08-10T02:10:10.274932" elapsed="0.000184"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-08-10T02:10:10.272917" 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-08-10T02:10:10.275671" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.275357" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.275323" elapsed="0.000600"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.276438" 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-08-10T02:10:10.276067" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.277186" 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-08-10T02:10:10.276619" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.277388" elapsed="0.000185"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-08-10T02:10:10.275292" 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-08-10T02:10:10.278025" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.277790" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.277776" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.278781" 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-08-10T02:10:10.278432" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.282613" 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-08-10T02:10:10.278960" elapsed="0.003694"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.282832" elapsed="0.000194"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-08-10T02:10:10.277746" elapsed="0.005318"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.283542" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.283255" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.283240" elapsed="0.000553"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.284304" 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-08-10T02:10:10.283935" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.285083" 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-08-10T02:10:10.284510" 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-08-10T02:10:10.285265" elapsed="0.000203"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-08-10T02:10:10.283210" 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-08-10T02:10:10.285924" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.285691" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.285675" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.286681" 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-08-10T02:10:10.286306" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.287453" 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-08-10T02:10:10.286863" 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-08-10T02:10:10.287646" elapsed="0.000189"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-08-10T02:10:10.285646" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.288285" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.288052" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.288037" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.289041" 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-08-10T02:10:10.288693" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.289818" 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-08-10T02:10:10.289221" 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-08-10T02:10:10.290053" elapsed="0.000185"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-08-10T02:10:10.288008" 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-08-10T02:10:10.290712" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.290476" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.290461" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.291482" 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-08-10T02:10:10.291111" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.292410" 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-08-10T02:10:10.291689" 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-08-10T02:10:10.292595" elapsed="0.000183"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-08-10T02:10:10.290431" 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-08-10T02:10:10.293225" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.292992" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.292977" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.293978" 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-08-10T02:10:10.293630" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.294743" 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-08-10T02:10:10.294155" 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-08-10T02:10:10.294927" elapsed="0.000181"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-08-10T02:10:10.292948" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.295591" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.295320" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.295305" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.296326" 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-08-10T02:10:10.295977" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.297095" 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-08-10T02:10:10.296525" 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-08-10T02:10:10.297276" elapsed="0.000208"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-08-10T02:10:10.295276" 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-08-10T02:10:10.297934" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.297699" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.297683" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.298691" 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-08-10T02:10:10.298319" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.299471" 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-08-10T02:10:10.298871" 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-08-10T02:10:10.299677" elapsed="0.000185"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-08-10T02:10:10.297654" 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-08-10T02:10:10.300315" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.300081" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.300066" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.301074" 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-08-10T02:10:10.300725" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.301884" 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-08-10T02:10:10.301290" 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-08-10T02:10:10.302067" elapsed="0.000181"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-08-10T02:10:10.300036" 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-08-10T02:10:10.302721" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.302485" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.302468" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.303472" 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-08-10T02:10:10.303105" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.304254" 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-08-10T02:10:10.303678" 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-08-10T02:10:10.304457" elapsed="0.000184"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-08-10T02:10:10.302438" 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-08-10T02:10:10.305090" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.304857" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.304842" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.305847" 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-08-10T02:10:10.305500" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.306617" 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-08-10T02:10:10.306025" 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-08-10T02:10:10.306798" elapsed="0.000181"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-08-10T02:10:10.304813" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.307448" elapsed="0.000215"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.307196" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.307180" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.308354" 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-08-10T02:10:10.307869" elapsed="0.000513"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.309118" 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-08-10T02:10:10.308542" 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-08-10T02:10:10.309297" elapsed="0.000202"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-08-10T02:10:10.307150" elapsed="0.002388"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.309947" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.309714" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.309699" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.310703" 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-08-10T02:10:10.310352" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.311468" 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-08-10T02:10:10.310881" 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-08-10T02:10:10.311660" elapsed="0.000183"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-08-10T02:10:10.309670" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.312292" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.312058" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.312043" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.313102" 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-08-10T02:10:10.312751" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.313875" 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-08-10T02:10:10.313281" 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-08-10T02:10:10.314054" elapsed="0.000182"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-08-10T02:10:10.312014" 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-08-10T02:10:10.314702" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.314469" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.314454" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.315478" 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-08-10T02:10:10.315089" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.316260" 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-08-10T02:10:10.315658" 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-08-10T02:10:10.316465" elapsed="0.000182"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-08-10T02:10:10.314425" 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-08-10T02:10:10.317094" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.316860" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.316845" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.317843" 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-08-10T02:10:10.317496" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.318617" 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-08-10T02:10:10.318021" 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-08-10T02:10:10.318798" elapsed="0.000181"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-08-10T02:10:10.316817" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.319445" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.319191" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.319176" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.320214" 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-08-10T02:10:10.319864" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.320985" 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-08-10T02:10:10.320411" 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-08-10T02:10:10.321165" elapsed="0.000200"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-08-10T02:10:10.319147" 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-08-10T02:10:10.321819" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.321585" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.321570" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.322568" 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-08-10T02:10:10.322203" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.323312" 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-08-10T02:10:10.322746" 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-08-10T02:10:10.323512" elapsed="0.000180"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-08-10T02:10:10.321541" 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-08-10T02:10:10.324216" elapsed="0.001099"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.323980" elapsed="0.001391"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.323965" elapsed="0.001432"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.325895" 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-08-10T02:10:10.325542" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.326667" 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-08-10T02:10:10.326074" 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-08-10T02:10:10.326849" elapsed="0.000183"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-08-10T02:10:10.323936" elapsed="0.003133"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.327505" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.327247" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.327232" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.328266" 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-08-10T02:10:10.327916" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.329037" 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-08-10T02:10:10.328466" 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-08-10T02:10:10.329219" elapsed="0.000203"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-08-10T02:10:10.327203" 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-08-10T02:10:10.329875" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.329640" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.329625" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.330644" 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-08-10T02:10:10.330261" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.331413" 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-08-10T02:10:10.330825" 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-08-10T02:10:10.331596" elapsed="0.000182"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-08-10T02:10:10.329595" 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-08-10T02:10:10.332263" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.332027" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.332013" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.333023" 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-08-10T02:10:10.332675" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.333790" 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-08-10T02:10:10.333201" 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-08-10T02:10:10.333973" elapsed="0.000183"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-08-10T02:10:10.331979" 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-08-10T02:10:10.334628" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.334391" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.334376" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.335383" 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-08-10T02:10:10.335014" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.336168" 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-08-10T02:10:10.335564" 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-08-10T02:10:10.336406" elapsed="0.000198"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-08-10T02:10:10.334327" 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-08-10T02:10:10.337060" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.336823" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.336808" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.337821" 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-08-10T02:10:10.337469" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.338595" 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-08-10T02:10:10.338001" 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-08-10T02:10:10.338779" elapsed="0.000182"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-08-10T02:10:10.336778" 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-08-10T02:10:10.339433" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.339180" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.339165" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.340230" 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-08-10T02:10:10.339835" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.341016" 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-08-10T02:10:10.340436" 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-08-10T02:10:10.341199" elapsed="0.000202"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-08-10T02:10:10.339135" 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-08-10T02:10:10.341859" elapsed="0.000306"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.341626" elapsed="0.000579"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.341611" elapsed="0.000618"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.342748" 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-08-10T02:10:10.342393" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.343533" 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-08-10T02:10:10.342931" 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-08-10T02:10:10.343714" elapsed="0.000202"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-08-10T02:10:10.341581" 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-08-10T02:10:10.344386" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.344133" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.344119" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.345121" 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-08-10T02:10:10.344773" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.345892" 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-08-10T02:10:10.345300" 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-08-10T02:10:10.346071" elapsed="0.000179"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-08-10T02:10:10.344089" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.346730" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.346490" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.346473" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.347482" 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-08-10T02:10:10.347115" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.348327" 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-08-10T02:10:10.347706" 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-08-10T02:10:10.348531" elapsed="0.000184"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-08-10T02:10:10.346442" 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-08-10T02:10:10.349163" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.348930" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.348916" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.349921" 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-08-10T02:10:10.349574" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.350694" 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-08-10T02:10:10.350100" 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-08-10T02:10:10.350877" elapsed="0.000181"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-08-10T02:10:10.348887" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.351532" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.351273" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.351259" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.352298" 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-08-10T02:10:10.351918" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.353077" 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-08-10T02:10:10.352505" 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-08-10T02:10:10.353258" elapsed="0.000201"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-08-10T02:10:10.351230" 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-08-10T02:10:10.353911" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.353677" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.353663" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.354668" 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-08-10T02:10:10.354299" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.355439" 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-08-10T02:10:10.354847" 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-08-10T02:10:10.355621" elapsed="0.000181"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-08-10T02:10:10.353633" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.356284" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.356049" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.356033" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.357044" 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-08-10T02:10:10.356696" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.357821" 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-08-10T02:10:10.357225" 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-08-10T02:10:10.358005" elapsed="0.000181"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-08-10T02:10:10.356002" 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-08-10T02:10:10.358812" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.358425" elapsed="0.000610"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.358409" elapsed="0.000651"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.359572" 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-08-10T02:10:10.359203" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.360359" 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-08-10T02:10:10.359753" 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-08-10T02:10:10.360545" elapsed="0.000181"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-08-10T02:10:10.358378" elapsed="0.002385"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.361176" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.360943" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.360928" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.361929" 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-08-10T02:10:10.361581" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.362703" 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-08-10T02:10:10.362106" 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-08-10T02:10:10.362885" elapsed="0.000182"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-08-10T02:10:10.360899" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.363543" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.363283" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.363269" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.364326" 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-08-10T02:10:10.363932" elapsed="0.000439"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.365096" 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-08-10T02:10:10.364524" 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-08-10T02:10:10.365276" elapsed="0.000203"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-08-10T02:10:10.363240" 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-08-10T02:10:10.365937" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.365703" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.365688" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.366692" 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-08-10T02:10:10.366324" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.367464" 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-08-10T02:10:10.366871" 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-08-10T02:10:10.367644" elapsed="0.000182"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-08-10T02:10:10.365658" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.368309" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.368043" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.368028" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.369061" 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-08-10T02:10:10.368714" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.369832" 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-08-10T02:10:10.369239" 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-08-10T02:10:10.370047" elapsed="0.000184"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-08-10T02:10:10.367999" 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-08-10T02:10:10.370707" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.370471" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.370457" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.371473" 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-08-10T02:10:10.371095" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.372265" 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-08-10T02:10:10.371654" 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-08-10T02:10:10.372466" elapsed="0.000185"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-08-10T02:10:10.370427" 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-08-10T02:10:10.373103" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.372869" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.372855" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.373861" 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-08-10T02:10:10.373512" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.374635" 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-08-10T02:10:10.374039" 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-08-10T02:10:10.374817" elapsed="0.000181"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-08-10T02:10:10.372826" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.375590" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.375328" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.375201" elapsed="0.000637"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.376364" 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-08-10T02:10:10.375980" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.377126" 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-08-10T02:10:10.376549" 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-08-10T02:10:10.377308" elapsed="0.000204"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-08-10T02:10:10.375172" elapsed="0.002377"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.377967" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.377729" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.377714" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.378726" 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-08-10T02:10:10.378375" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.379497" 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-08-10T02:10:10.378907" 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-08-10T02:10:10.379679" elapsed="0.000182"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-08-10T02:10:10.377685" 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-08-10T02:10:10.380370" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.380079" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.380064" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.381105" 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-08-10T02:10:10.380758" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.381920" 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-08-10T02:10:10.381323" 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-08-10T02:10:10.382104" elapsed="0.000181"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-08-10T02:10:10.380034" 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-08-10T02:10:10.382757" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.382523" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.382508" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.383512" 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-08-10T02:10:10.383143" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.384292" 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-08-10T02:10:10.383693" 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-08-10T02:10:10.384494" elapsed="0.000182"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-08-10T02:10:10.382479" 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-08-10T02:10:10.385124" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.384891" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.384877" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.385875" 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-08-10T02:10:10.385528" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.386642" 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-08-10T02:10:10.386052" 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-08-10T02:10:10.386822" elapsed="0.000181"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-08-10T02:10:10.384848" elapsed="0.002193"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.387474" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.387219" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.387203" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.388240" 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-08-10T02:10:10.387863" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.389018" 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-08-10T02:10:10.388441" 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-08-10T02:10:10.389207" elapsed="0.000203"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-08-10T02:10:10.387173" 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-08-10T02:10:10.389862" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.389627" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.389612" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.390627" 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-08-10T02:10:10.390248" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.391394" 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-08-10T02:10:10.390806" 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-08-10T02:10:10.391575" elapsed="0.000181"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-08-10T02:10:10.389583" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.392355" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.392083" elapsed="0.000535"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.391956" elapsed="0.000689"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.393140" 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-08-10T02:10:10.392790" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.393920" 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-08-10T02:10:10.393320" 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-08-10T02:10:10.394101" elapsed="0.000181"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-08-10T02:10:10.391927" 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-08-10T02:10:10.394753" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.394519" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.394505" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.395505" 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-08-10T02:10:10.395135" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.396251" 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-08-10T02:10:10.395684" elapsed="0.001668"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.397519" elapsed="0.000185"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-08-10T02:10:10.394475" elapsed="0.003266"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.398153" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.397918" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.397903" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.398908" 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-08-10T02:10:10.398560" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.399680" 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-08-10T02:10:10.399088" 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-08-10T02:10:10.399863" elapsed="0.000182"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-08-10T02:10:10.397873" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.400544" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.400258" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.400243" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.401275" 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-08-10T02:10:10.400929" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.402050" 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-08-10T02:10:10.401481" 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-08-10T02:10:10.402229" elapsed="0.000200"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-08-10T02:10:10.400214" 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-08-10T02:10:10.402879" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.402644" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.402629" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.403639" 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-08-10T02:10:10.403265" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.404432" 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-08-10T02:10:10.403818" 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-08-10T02:10:10.404613" elapsed="0.000182"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-08-10T02:10:10.402600" 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-08-10T02:10:10.405288" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.405050" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.405035" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.406049" 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-08-10T02:10:10.405699" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.406830" 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-08-10T02:10:10.406229" 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-08-10T02:10:10.407014" elapsed="0.000182"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-08-10T02:10:10.405006" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.407668" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.407433" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.407418" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.408433" 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-08-10T02:10:10.408055" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.409191" 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-08-10T02:10:10.408614" 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-08-10T02:10:10.409393" elapsed="0.000185"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-08-10T02:10:10.407388" 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-08-10T02:10:10.410144" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.409903" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.409779" elapsed="0.000630"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.410902" 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-08-10T02:10:10.410553" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.411667" 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-08-10T02:10:10.411079" 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-08-10T02:10:10.411847" elapsed="0.000181"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-08-10T02:10:10.409750" 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-08-10T02:10:10.412527" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.412243" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.412228" elapsed="0.000547"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.413266" 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-08-10T02:10:10.412918" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.414047" 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-08-10T02:10:10.413464" 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-08-10T02:10:10.414229" elapsed="0.000202"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-08-10T02:10:10.412199" 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-08-10T02:10:10.414882" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.414646" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.414632" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.415635" 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-08-10T02:10:10.415267" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.416403" 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-08-10T02:10:10.415812" 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-08-10T02:10:10.416633" elapsed="0.000185"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-08-10T02:10:10.414603" 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-08-10T02:10:10.417264" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.417031" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.417017" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.418020" 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-08-10T02:10:10.417673" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.418792" 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-08-10T02:10:10.418198" 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-08-10T02:10:10.418973" elapsed="0.000181"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-08-10T02:10:10.416988" elapsed="0.002203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.419623" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.419389" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.419374" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.420370" 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-08-10T02:10:10.420006" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.421155" 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-08-10T02:10:10.420579" 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-08-10T02:10:10.421354" elapsed="0.000191"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-08-10T02:10:10.419325" 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-08-10T02:10:10.421997" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.421764" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.421747" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.422760" 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-08-10T02:10:10.422405" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.423530" 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-08-10T02:10:10.422938" 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-08-10T02:10:10.423710" elapsed="0.000181"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-08-10T02:10:10.421718" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.424363" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.424111" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.424094" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.425110" 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-08-10T02:10:10.424764" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.425879" 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-08-10T02:10:10.425287" 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-08-10T02:10:10.426059" elapsed="0.000181"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-08-10T02:10:10.424064" 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-08-10T02:10:10.426830" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.426591" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.426463" elapsed="0.000612"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.427586" 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-08-10T02:10:10.427215" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.428410" 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-08-10T02:10:10.427813" 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-08-10T02:10:10.428622" elapsed="0.000184"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-08-10T02:10:10.426434" 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-08-10T02:10:10.429257" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.429022" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.429008" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.430012" 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-08-10T02:10:10.429664" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.430789" 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-08-10T02:10:10.430189" 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-08-10T02:10:10.430970" elapsed="0.000180"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-08-10T02:10:10.428978" 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-08-10T02:10:10.431621" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.431387" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.431371" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.432373" 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-08-10T02:10:10.432006" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.433137" 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-08-10T02:10:10.432565" 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-08-10T02:10:10.433322" elapsed="0.000205"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-08-10T02:10:10.431322" 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-08-10T02:10:10.433978" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.433744" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.433729" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.434730" 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-08-10T02:10:10.434381" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.435494" 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-08-10T02:10:10.434908" 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-08-10T02:10:10.435675" elapsed="0.000180"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-08-10T02:10:10.433700" elapsed="0.002192"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.436302" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.436069" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.436055" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.437085" 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-08-10T02:10:10.436738" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.437864" 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-08-10T02:10:10.437262" 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-08-10T02:10:10.438048" elapsed="0.000181"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-08-10T02:10:10.436026" 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-08-10T02:10:10.438742" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.438468" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.438452" elapsed="0.000541"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.439505" 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-08-10T02:10:10.439136" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.440260" 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-08-10T02:10:10.439686" 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-08-10T02:10:10.440463" elapsed="0.000218"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-08-10T02:10:10.438422" 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-08-10T02:10:10.441139" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.440904" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.440888" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.441901" 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-08-10T02:10:10.441551" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.442675" 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-08-10T02:10:10.442081" 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-08-10T02:10:10.442859" elapsed="0.000181"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-08-10T02:10:10.440859" 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-08-10T02:10:10.443649" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.443405" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.443243" elapsed="0.000653"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.444406" 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-08-10T02:10:10.444039" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.445190" 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-08-10T02:10:10.444586" 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-08-10T02:10:10.445392" elapsed="0.000190"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-08-10T02:10:10.443214" 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-08-10T02:10:10.446032" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.445799" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.445784" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.446784" 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-08-10T02:10:10.446435" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.447556" 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-08-10T02:10:10.446962" 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-08-10T02:10:10.447736" elapsed="0.000181"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-08-10T02:10:10.445755" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.448389" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.448136" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.448121" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.449141" 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-08-10T02:10:10.448793" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.449910" 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-08-10T02:10:10.449319" 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-08-10T02:10:10.450129" elapsed="0.000184"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-08-10T02:10:10.448092" 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-08-10T02:10:10.450796" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.450560" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.450545" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.451559" 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-08-10T02:10:10.451181" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.452313" 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-08-10T02:10:10.451739" 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-08-10T02:10:10.452515" elapsed="0.000213"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-08-10T02:10:10.450516" 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-08-10T02:10:10.453180" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.452948" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.452932" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.453933" 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-08-10T02:10:10.453586" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.454703" 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-08-10T02:10:10.454111" 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-08-10T02:10:10.454883" elapsed="0.000180"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-08-10T02:10:10.452903" elapsed="0.002198"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.455532" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.455278" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.455263" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.456262" 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-08-10T02:10:10.455916" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.457073" 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-08-10T02:10:10.456461" 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-08-10T02:10:10.457254" elapsed="0.000209"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-08-10T02:10:10.455234" 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-08-10T02:10:10.457915" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.457682" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.457665" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.458670" 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-08-10T02:10:10.458300" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.459459" 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-08-10T02:10:10.458848" 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-08-10T02:10:10.459645" elapsed="0.000184"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-08-10T02:10:10.457636" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.460417" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.460158" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.460033" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.461192" 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-08-10T02:10:10.460837" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.462021" 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-08-10T02:10:10.461439" 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-08-10T02:10:10.462211" elapsed="0.000202"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-08-10T02:10:10.460002" elapsed="0.002449"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.462863" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.462629" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.462615" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.463625" 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-08-10T02:10:10.463247" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.464390" 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-08-10T02:10:10.463803" 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-08-10T02:10:10.464572" elapsed="0.000180"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-08-10T02:10:10.462586" 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-08-10T02:10:10.465216" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.464983" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.464968" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.465968" 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-08-10T02:10:10.465621" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.466737" 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-08-10T02:10:10.466146" 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-08-10T02:10:10.466916" elapsed="0.000180"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-08-10T02:10:10.464940" elapsed="0.002193"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.467565" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.467310" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.467295" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.468297" 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-08-10T02:10:10.467950" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.469095" 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-08-10T02:10:10.468496" 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-08-10T02:10:10.469278" elapsed="0.000203"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-08-10T02:10:10.467266" 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-08-10T02:10:10.469934" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.469699" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.469683" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.470699" 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-08-10T02:10:10.470320" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.471493" 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-08-10T02:10:10.470884" 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-08-10T02:10:10.471672" elapsed="0.000181"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-08-10T02:10:10.469654" 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-08-10T02:10:10.472308" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.472070" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.472054" elapsed="0.000557"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.473156" 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-08-10T02:10:10.472757" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.473934" 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-08-10T02:10:10.473358" 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-08-10T02:10:10.474116" elapsed="0.000183"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-08-10T02:10:10.472025" 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-08-10T02:10:10.474770" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.474536" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.474521" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.475531" 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-08-10T02:10:10.475157" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.476281" 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-08-10T02:10:10.475711" 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-08-10T02:10:10.476483" elapsed="0.000184"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-08-10T02:10:10.474492" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.477273" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.477030" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.476901" elapsed="0.000642"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.478033" 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-08-10T02:10:10.477684" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.478807" 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-08-10T02:10:10.478212" 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-08-10T02:10:10.478988" elapsed="0.000182"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-08-10T02:10:10.476839" 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-08-10T02:10:10.479642" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.479405" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.479390" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.480394" 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-08-10T02:10:10.480027" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.481157" 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-08-10T02:10:10.480574" 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-08-10T02:10:10.481357" elapsed="0.000198"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-08-10T02:10:10.479359" 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-08-10T02:10:10.482006" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.481772" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.481757" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.482786" 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-08-10T02:10:10.482417" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.483555" 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-08-10T02:10:10.482965" 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-08-10T02:10:10.483734" elapsed="0.000182"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-08-10T02:10:10.481727" 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-08-10T02:10:10.484427" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.484175" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.484160" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.485197" 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-08-10T02:10:10.484814" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.485964" 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-08-10T02:10:10.485395" 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-08-10T02:10:10.486147" elapsed="0.000179"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-08-10T02:10:10.484130" 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-08-10T02:10:10.486795" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.486563" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.486548" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.487545" 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-08-10T02:10:10.487179" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.488288" 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-08-10T02:10:10.487724" elapsed="0.000592"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.488488" elapsed="0.000181"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-08-10T02:10:10.486518" elapsed="0.002188"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.489153" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.488884" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.488869" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.489905" 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-08-10T02:10:10.489559" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.490668" 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-08-10T02:10:10.490083" 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-08-10T02:10:10.490849" elapsed="0.000179"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-08-10T02:10:10.488840" 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-08-10T02:10:10.491497" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.491245" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.491229" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.492226" 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-08-10T02:10:10.491881" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.493025" 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-08-10T02:10:10.492422" 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-08-10T02:10:10.493214" elapsed="0.000200"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-08-10T02:10:10.491199" 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-08-10T02:10:10.493982" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.493739" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.493613" elapsed="0.000614"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.494738" 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-08-10T02:10:10.494388" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.495511" 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-08-10T02:10:10.494917" 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-08-10T02:10:10.495734" elapsed="0.000182"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-08-10T02:10:10.493584" 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-08-10T02:10:10.496392" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.496133" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.496119" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.497150" 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-08-10T02:10:10.496786" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.497919" 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-08-10T02:10:10.497328" 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-08-10T02:10:10.498100" elapsed="0.000181"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-08-10T02:10:10.496089" 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-08-10T02:10:10.498751" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.498519" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.498504" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.499497" 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-08-10T02:10:10.499132" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.500241" 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-08-10T02:10:10.499675" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.500443" elapsed="0.000187"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-08-10T02:10:10.498475" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.501103" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.500843" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.500829" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.501854" 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-08-10T02:10:10.501507" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.502618" 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-08-10T02:10:10.502032" 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-08-10T02:10:10.502797" elapsed="0.000179"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-08-10T02:10:10.500800" 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-08-10T02:10:10.503441" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.503190" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.503175" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.504169" 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-08-10T02:10:10.503825" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.504937" 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-08-10T02:10:10.504363" 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-08-10T02:10:10.505143" elapsed="0.000181"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-08-10T02:10:10.503147" 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-08-10T02:10:10.505795" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.505558" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.505542" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.506545" 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-08-10T02:10:10.506178" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.507365" 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-08-10T02:10:10.506764" 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-08-10T02:10:10.507550" elapsed="0.000182"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-08-10T02:10:10.505514" 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-08-10T02:10:10.508181" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.507947" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.507933" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.508935" 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-08-10T02:10:10.508587" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.509753" 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-08-10T02:10:10.509144" 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-08-10T02:10:10.509946" elapsed="0.000181"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-08-10T02:10:10.507904" 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-08-10T02:10:10.510710" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.510469" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.510327" elapsed="0.000630"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.511470" 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-08-10T02:10:10.511099" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.512217" 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-08-10T02:10:10.511651" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.512417" elapsed="0.000188"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-08-10T02:10:10.510298" 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-08-10T02:10:10.513055" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.512823" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.512808" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.513849" 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-08-10T02:10:10.513486" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.514622" 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-08-10T02:10:10.514034" 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-08-10T02:10:10.514804" elapsed="0.000180"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-08-10T02:10:10.512779" elapsed="0.002241"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-08-10T02:10:10.270182" elapsed="0.244869"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.516335" 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-08-10T02:10:10.515209" elapsed="0.001167"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.516438" elapsed="0.000064"/>
</return>
<msg time="2026-08-10T02:10:10.516640" 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-08-10T02:10:10.215872" elapsed="0.300796"/>
</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-08-10T02:10:10.519920" 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-08-10T02:10:10.519619" elapsed="0.000388">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-08-10T02:10:10.520101" 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-08-10T02:10:10.519244" elapsed="0.000882"/>
</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-08-10T02:10:10.520462" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.520195" elapsed="0.000327"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.521047" 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-08-10T02:10:10.520757" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.520545" elapsed="0.000563"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.520177" elapsed="0.000952"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.523572" 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-08-10T02:10:10.521324" elapsed="0.002274"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:10.523649" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:10.523801" 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-08-10T02:10:10.517085" elapsed="0.006741"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.525456" 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-08-10T02:10:10.525142" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.525888" 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-08-10T02:10:10.525652" elapsed="0.000703"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.526755" 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-08-10T02:10:10.526511" elapsed="0.000287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.527179" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.526943" elapsed="0.000278"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:10.528038" 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-08-10T02:10:10.527842" elapsed="0.000221"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-08-10T02:10:10.528404" 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-08-10T02:10:10.528213" elapsed="0.000217"/>
</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-08-10T02:10:10.528583" elapsed="0.000191"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.529170" 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-08-10T02:10:10.528928" elapsed="0.000290"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-08-10T02:10:10.529280" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:10.529457" 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-08-10T02:10:10.527440" elapsed="0.002047"/>
</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-08-10T02:10:10.559045" level="INFO">POST Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.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-08-10T02:10:10.559450" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=88', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:10.559713" 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-08-10T02:10:10.532397" elapsed="0.027377"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.530357" elapsed="0.029520"/>
</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-08-10T02:10:10.560280" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.559936" elapsed="0.000558"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.529547" elapsed="0.030995"/>
</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-08-10T02:10:10.567246" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.562928" elapsed="0.004361"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.562432" elapsed="0.004891"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.562389" elapsed="0.004978"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.569848" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.567642" elapsed="0.002251"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.567423" elapsed="0.002504"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.567407" elapsed="0.002544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.570526" 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-08-10T02:10:10.570127" elapsed="0.000426"/>
</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-08-10T02:10:10.570871" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.570622" elapsed="0.000306"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.571437" 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-08-10T02:10:10.571121" elapsed="0.000342"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.570950" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.570604" elapsed="0.000915"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.572047" 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-08-10T02:10:10.571688" elapsed="0.000386"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:10.572404" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.572142" elapsed="0.000327"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.572956" 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-08-10T02:10:10.572664" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.572493" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.572125" elapsed="0.000911"/>
</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-08-10T02:10:10.573186" elapsed="0.000363"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:10:10.574027" 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-08-10T02:10:10.573748" elapsed="0.000304"/>
</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-08-10T02:10:10.574206" elapsed="0.002189"/>
</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-08-10T02:10:10.561378" elapsed="0.015082"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:10.576644" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:10.576535" elapsed="0.000154"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.576518" elapsed="0.000193"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:10:10.579103" 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-08-10T02:10:10.576854" elapsed="0.002276"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:10:10.579177" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:10.579331" 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-08-10T02:10:10.524153" elapsed="0.055222"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.579487" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:10.579642" 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-08-10T02:10:10.129220" elapsed="0.450447"/>
</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-08-10T02:10:10.580010" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.579773" elapsed="0.000305"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.579756" elapsed="0.000346"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.580134" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-group-2</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-08-10T02:10:10.126720" elapsed="0.453535"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-08-10T02:10:10.115251" elapsed="0.465049"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:10:09.128574" elapsed="1.451763"/>
</for>
<doc>Add 100 groups of type 2 in every switch.</doc>
<status status="PASS" start="2026-08-10T02:10:09.128180" elapsed="1.452300"/>
</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-08-10T02:10:10.584079" 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-08-10T02:10:10.583679" elapsed="0.000428"/>
</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-08-10T02:10:10.625678" 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-08-10T02:10:10.625285" elapsed="0.000421"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.626472" 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-08-10T02:10:10.626214" elapsed="0.000333">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-08-10T02:10:10.626641" 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-08-10T02:10:10.625867" elapsed="0.000798"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.627209" 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-08-10T02:10:10.626828" elapsed="0.000408"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.627550" 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-08-10T02:10:10.627705" 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-08-10T02:10:10.627412" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.628126" 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-08-10T02:10:10.627884" 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-08-10T02:10:10.629129" 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-08-10T02:10:10.628875" elapsed="0.000299"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.629614" 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-08-10T02:10:10.629336" elapsed="0.000304"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.630410" 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-08-10T02:10:10.630009" elapsed="0.000427"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-08-10T02:10:10.631500" 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-08-10T02:10:10.631016" elapsed="0.000511"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-08-10T02:10:10.631578" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:10.631731" 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-08-10T02:10:10.630670" elapsed="0.001085"/>
</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-08-10T02:10:10.631906" elapsed="0.000277"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:1</var>
<status status="PASS" start="2026-08-10T02:10:10.629851" elapsed="0.002374"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-08-10T02:10:10.629687" elapsed="0.002573"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:10.632302" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:10.632478" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:10.628552" elapsed="0.003951"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.628237" elapsed="0.004298"/>
</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-08-10T02:10:10.632706" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.632559" elapsed="0.000202"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.628218" elapsed="0.004563"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.633467" 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-08-10T02:10:10.632920" elapsed="0.000574"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.633543" 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-08-10T02:10:10.624669" elapsed="0.008997"/>
</kw>
<msg time="2026-08-10T02:10:10.633722" 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-08-10T02:10:10.612523" elapsed="0.021246"/>
</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-08-10T02:10:10.645879" 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-08-10T02:10:10.657770" elapsed="0.000026"/>
</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-08-10T02:10:10.669640" 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-08-10T02:10:10.669835" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:10.670009" elapsed="0.000019"/>
</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-08-10T02:10:10.670413" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.670224" elapsed="0.000281"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:10.670209" elapsed="0.000321"/>
</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-08-10T02:10:10.670671" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:10.670835" elapsed="0.000019"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:10.670995" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:10.670182" elapsed="0.000865"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:10.670081" elapsed="0.000992"/>
</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-08-10T02:10:10.671214" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:10.671289" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:10.671426" 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-08-10T02:10:10.608381" elapsed="0.063072"/>
</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-08-10T02:10:10.681982" elapsed="0.000331"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.695300" 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-08-10T02:10:10.694917" elapsed="0.000412"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.696067" 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-08-10T02:10:10.695849" elapsed="0.000287">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-08-10T02:10:10.696228" 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-08-10T02:10:10.695515" elapsed="0.000737"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.696821" 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-08-10T02:10:10.696435" elapsed="0.000412"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.697141" 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-08-10T02:10:10.697286" 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-08-10T02:10:10.697006" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.697728" level="INFO">{
  "flow": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.697485" 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-08-10T02:10:10.698141" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.697841" elapsed="0.000357"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.698715" 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-08-10T02:10:10.698388" elapsed="0.000354"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.698222" elapsed="0.000556"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.697822" elapsed="0.000978"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.699387" 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-08-10T02:10:10.698944" elapsed="0.000471"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.699464" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:10.699614" 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-08-10T02:10:10.694217" elapsed="0.005422"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.712758" 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-08-10T02:10:10.712387" elapsed="0.000400"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.713495" 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-08-10T02:10:10.713273" elapsed="0.000284">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-08-10T02:10:10.713648" 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-08-10T02:10:10.712946" elapsed="0.000726"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.714210" 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-08-10T02:10:10.713833" elapsed="0.000405"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.714550" 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-08-10T02:10:10.714705" 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-08-10T02:10:10.714416" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.715160" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.714883" elapsed="0.000322"/>
</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-08-10T02:10:10.715582" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.715271" elapsed="0.000368"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.716098" 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-08-10T02:10:10.715808" elapsed="0.000315"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.715663" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.715254" elapsed="0.000930"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.716771" 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-08-10T02:10:10.716330" elapsed="0.000468"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.716847" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:10.716996" 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-08-10T02:10:10.711754" elapsed="0.005267"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.729911" 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-08-10T02:10:10.729542" elapsed="0.000396"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.730651" 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-08-10T02:10:10.730444" 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-08-10T02:10:10.730839" 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-08-10T02:10:10.730098" elapsed="0.000765"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.731483" 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-08-10T02:10:10.731063" elapsed="0.000448"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:10.731805" 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-08-10T02:10:10.731935" 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-08-10T02:10:10.731671" elapsed="0.000291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.732377" 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-08-10T02:10:10.732116" elapsed="0.000311"/>
</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-08-10T02:10:10.732780" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.732493" elapsed="0.000345"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.733299" 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-08-10T02:10:10.733010" elapsed="0.000315"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.732862" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.732476" elapsed="0.000927"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.734147" 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-08-10T02:10:10.733548" elapsed="0.000628"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.734226" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:10.734400" 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-08-10T02:10:10.728985" elapsed="0.005443"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.734866" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:10.734589" elapsed="0.000309"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.735440" 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-08-10T02:10:10.735055" elapsed="0.000411"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:10.736081" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.735849" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.735834" elapsed="0.000328"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.736669" 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-08-10T02:10:10.736301" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.737630" 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-08-10T02:10:10.736847" 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-08-10T02:10:10.737815" elapsed="0.000195"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-08-10T02:10:10.735803" 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-08-10T02:10:10.738483" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.738224" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.738210" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.739254" 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-08-10T02:10:10.738897" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.740093" 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-08-10T02:10:10.739491" 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-08-10T02:10:10.740274" elapsed="0.000208"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-08-10T02:10:10.738180" 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-08-10T02:10:10.740932" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.740697" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.740682" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.741683" 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-08-10T02:10:10.741316" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.742477" 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-08-10T02:10:10.741862" 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-08-10T02:10:10.742660" elapsed="0.000209"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-08-10T02:10:10.740653" 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-08-10T02:10:10.743321" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.743086" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.743071" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.744078" 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-08-10T02:10:10.743730" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.744886" 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-08-10T02:10:10.744258" 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-08-10T02:10:10.745069" elapsed="0.000181"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-08-10T02:10:10.743042" 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-08-10T02:10:10.745724" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.745490" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.745475" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.746473" 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-08-10T02:10:10.746108" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.747276" 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-08-10T02:10:10.746650" 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-08-10T02:10:10.747481" elapsed="0.000181"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-08-10T02:10:10.745446" 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-08-10T02:10:10.748107" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.747875" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.747860" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.748858" 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-08-10T02:10:10.748512" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.749646" 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-08-10T02:10:10.749035" 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-08-10T02:10:10.749827" elapsed="0.000179"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-08-10T02:10:10.747831" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.750531" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.750218" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.750204" elapsed="0.000576"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.751325" 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-08-10T02:10:10.750960" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.752133" 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-08-10T02:10:10.751529" 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-08-10T02:10:10.752314" elapsed="0.000203"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-08-10T02:10:10.750175" elapsed="0.002380"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.752963" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.752731" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.752716" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.753721" 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-08-10T02:10:10.753368" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.754640" 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-08-10T02:10:10.753900" elapsed="0.000769"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.754824" elapsed="0.000203"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-08-10T02:10:10.752687" elapsed="0.002378"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.755500" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.755242" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.755228" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.756227" 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-08-10T02:10:10.755884" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.757035" 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-08-10T02:10:10.756427" 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-08-10T02:10:10.757215" elapsed="0.000201"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-08-10T02:10:10.755199" 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-08-10T02:10:10.757864" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.757631" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.757616" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.758612" 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-08-10T02:10:10.758244" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.759442" 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-08-10T02:10:10.758792" 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-08-10T02:10:10.759623" elapsed="0.000181"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-08-10T02:10:10.757587" 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-08-10T02:10:10.760248" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.760016" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.760002" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.761015" 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-08-10T02:10:10.760669" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.761810" 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-08-10T02:10:10.761193" 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-08-10T02:10:10.762028" elapsed="0.000183"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-08-10T02:10:10.759973" 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-08-10T02:10:10.762687" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.762448" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.762433" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.763472" 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-08-10T02:10:10.763103" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.764244" 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-08-10T02:10:10.763650" 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-08-10T02:10:10.764444" elapsed="0.000182"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-08-10T02:10:10.762403" 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-08-10T02:10:10.765072" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.764839" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.764824" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.765818" 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-08-10T02:10:10.765474" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.766609" 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-08-10T02:10:10.765995" 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-08-10T02:10:10.766790" elapsed="0.000181"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-08-10T02:10:10.764796" 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-08-10T02:10:10.767481" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.767227" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.767212" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.768215" 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-08-10T02:10:10.767868" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.769018" 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-08-10T02:10:10.768413" 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-08-10T02:10:10.769199" elapsed="0.000201"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-08-10T02:10:10.767183" 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-08-10T02:10:10.769853" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.769618" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.769602" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.770722" 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-08-10T02:10:10.770236" elapsed="0.000512"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.771545" 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-08-10T02:10:10.770903" 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-08-10T02:10:10.771727" elapsed="0.000181"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-08-10T02:10:10.769573" 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-08-10T02:10:10.772372" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.772119" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.772105" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.773106" 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-08-10T02:10:10.772757" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.773946" 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-08-10T02:10:10.773321" 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-08-10T02:10:10.774129" elapsed="0.000180"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-08-10T02:10:10.772075" 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-08-10T02:10:10.774778" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.774545" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.774531" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.775561" 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-08-10T02:10:10.775190" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.776353" 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-08-10T02:10:10.775741" 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-08-10T02:10:10.776538" elapsed="0.000186"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-08-10T02:10:10.774502" 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-08-10T02:10:10.777172" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.776939" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.776924" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.777923" 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-08-10T02:10:10.777577" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.778715" 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-08-10T02:10:10.778101" 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-08-10T02:10:10.778896" elapsed="0.000184"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-08-10T02:10:10.776896" 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-08-10T02:10:10.779577" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.779324" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.779309" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.780305" 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-08-10T02:10:10.779961" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.781099" 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-08-10T02:10:10.780503" 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-08-10T02:10:10.781280" elapsed="0.000201"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-08-10T02:10:10.779279" 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-08-10T02:10:10.781931" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.781697" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.781682" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.782678" 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-08-10T02:10:10.782314" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.783512" 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-08-10T02:10:10.782855" 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-08-10T02:10:10.783699" elapsed="0.000181"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-08-10T02:10:10.781654" 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-08-10T02:10:10.784335" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.784098" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.784083" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.785137" 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-08-10T02:10:10.784785" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.785944" 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-08-10T02:10:10.785316" 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-08-10T02:10:10.786126" elapsed="0.000181"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-08-10T02:10:10.784053" 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-08-10T02:10:10.786780" elapsed="0.000297"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.786547" elapsed="0.000569"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.786532" elapsed="0.000623"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.787668" 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-08-10T02:10:10.787300" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.788464" 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-08-10T02:10:10.787848" 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-08-10T02:10:10.788649" elapsed="0.000181"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-08-10T02:10:10.786503" elapsed="0.002364"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.789280" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.789047" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.789032" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.790027" 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-08-10T02:10:10.789683" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.790817" 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-08-10T02:10:10.790205" 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-08-10T02:10:10.790999" elapsed="0.000209"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-08-10T02:10:10.789003" 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-08-10T02:10:10.791683" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.791444" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.791429" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.792434" 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-08-10T02:10:10.792069" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.793206" 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-08-10T02:10:10.792611" 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-08-10T02:10:10.793408" elapsed="0.000187"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-08-10T02:10:10.791399" 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-08-10T02:10:10.794044" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.793811" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.793796" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.794803" 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-08-10T02:10:10.794451" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.795625" 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-08-10T02:10:10.794981" 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-08-10T02:10:10.795812" elapsed="0.000180"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-08-10T02:10:10.793767" 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-08-10T02:10:10.796502" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.796246" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.796231" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.797238" 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-08-10T02:10:10.796888" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.798035" 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-08-10T02:10:10.797436" 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-08-10T02:10:10.798216" elapsed="0.000200"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-08-10T02:10:10.796202" 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-08-10T02:10:10.798865" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.798632" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.798617" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.799658" 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-08-10T02:10:10.799285" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.800458" 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-08-10T02:10:10.799838" 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-08-10T02:10:10.800639" elapsed="0.000181"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-08-10T02:10:10.798588" 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-08-10T02:10:10.801268" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.801034" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.801020" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.802023" 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-08-10T02:10:10.801676" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.802823" 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-08-10T02:10:10.802202" 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-08-10T02:10:10.803003" elapsed="0.000181"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-08-10T02:10:10.800990" 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-08-10T02:10:10.803795" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.803447" elapsed="0.000571"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.803431" elapsed="0.000612"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.804554" 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-08-10T02:10:10.804185" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.805330" 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-08-10T02:10:10.804733" 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-08-10T02:10:10.805531" elapsed="0.000181"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-08-10T02:10:10.803401" 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-08-10T02:10:10.806157" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.805925" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.805910" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.806913" 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-08-10T02:10:10.806567" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.807737" 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-08-10T02:10:10.807090" 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-08-10T02:10:10.807952" elapsed="0.000181"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-08-10T02:10:10.805881" 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-08-10T02:10:10.808601" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.808365" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.808329" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.809356" 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-08-10T02:10:10.808990" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.810135" 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-08-10T02:10:10.809536" 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-08-10T02:10:10.810315" elapsed="0.000203"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-08-10T02:10:10.808300" 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-08-10T02:10:10.810964" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.810733" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.810718" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.811744" 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-08-10T02:10:10.811393" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.812543" 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-08-10T02:10:10.811925" 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-08-10T02:10:10.812726" elapsed="0.000182"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-08-10T02:10:10.810689" 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-08-10T02:10:10.813376" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.813122" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.813107" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.814112" 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-08-10T02:10:10.813766" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.814912" 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-08-10T02:10:10.814291" 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-08-10T02:10:10.815092" elapsed="0.000182"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-08-10T02:10:10.813078" 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-08-10T02:10:10.815788" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.815550" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.815535" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.816546" 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-08-10T02:10:10.816174" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.817322" 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-08-10T02:10:10.816725" 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-08-10T02:10:10.817522" elapsed="0.000181"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-08-10T02:10:10.815505" 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-08-10T02:10:10.818154" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.817920" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.817903" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.818911" 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-08-10T02:10:10.818563" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.819786" 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-08-10T02:10:10.819127" 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-08-10T02:10:10.819970" elapsed="0.000182"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-08-10T02:10:10.817874" 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-08-10T02:10:10.820736" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.820494" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.820372" elapsed="0.000612"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.821495" 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-08-10T02:10:10.821128" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.822272" 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-08-10T02:10:10.821675" 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-08-10T02:10:10.822473" elapsed="0.000181"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-08-10T02:10:10.820322" 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-08-10T02:10:10.823103" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.822869" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.822854" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.823885" 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-08-10T02:10:10.823537" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.824678" 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-08-10T02:10:10.824064" 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-08-10T02:10:10.824858" elapsed="0.000179"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-08-10T02:10:10.822825" 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-08-10T02:10:10.825503" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.825248" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.825234" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.826229" 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-08-10T02:10:10.825886" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.827030" 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-08-10T02:10:10.826428" 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-08-10T02:10:10.827209" elapsed="0.000201"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-08-10T02:10:10.825205" 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-08-10T02:10:10.827891" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.827657" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.827642" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.828645" 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-08-10T02:10:10.828275" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.829438" 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-08-10T02:10:10.828823" 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-08-10T02:10:10.829618" elapsed="0.000181"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-08-10T02:10:10.827613" 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-08-10T02:10:10.830281" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.830012" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.829996" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.831038" 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-08-10T02:10:10.830690" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.831874" 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-08-10T02:10:10.831215" 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-08-10T02:10:10.832058" elapsed="0.000183"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-08-10T02:10:10.829968" 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-08-10T02:10:10.832712" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.832479" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.832464" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.833462" 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-08-10T02:10:10.833096" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.834238" 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-08-10T02:10:10.833640" 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-08-10T02:10:10.834438" elapsed="0.000183"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-08-10T02:10:10.832434" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.835069" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.834836" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.834821" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.835840" 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-08-10T02:10:10.835474" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.836636" 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-08-10T02:10:10.836017" 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-08-10T02:10:10.836817" elapsed="0.000183"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-08-10T02:10:10.834792" 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-08-10T02:10:10.837582" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.837321" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.837200" elapsed="0.000628"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.838317" 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-08-10T02:10:10.837969" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.839118" 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-08-10T02:10:10.838522" 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-08-10T02:10:10.839298" elapsed="0.000200"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-08-10T02:10:10.837171" 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-08-10T02:10:10.839983" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.839750" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.839735" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.840735" 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-08-10T02:10:10.840387" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.841535" 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-08-10T02:10:10.840915" 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-08-10T02:10:10.841750" elapsed="0.000181"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-08-10T02:10:10.839706" 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-08-10T02:10:10.842398" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.842146" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.842132" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.843132" 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-08-10T02:10:10.842786" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.843958" 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-08-10T02:10:10.843311" 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-08-10T02:10:10.844139" elapsed="0.000180"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-08-10T02:10:10.842103" 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-08-10T02:10:10.844787" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.844555" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.844540" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.845538" 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-08-10T02:10:10.845172" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.846314" 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-08-10T02:10:10.845717" 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-08-10T02:10:10.846523" elapsed="0.000180"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-08-10T02:10:10.844511" 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-08-10T02:10:10.847153" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.846919" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.846903" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.847938" 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-08-10T02:10:10.847558" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.848736" 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-08-10T02:10:10.848117" 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-08-10T02:10:10.848917" elapsed="0.000181"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-08-10T02:10:10.846875" 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-08-10T02:10:10.849568" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.849312" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.849297" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.850295" 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-08-10T02:10:10.849950" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.851094" 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-08-10T02:10:10.850496" 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-08-10T02:10:10.851273" elapsed="0.000215"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-08-10T02:10:10.849268" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.851960" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.851720" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.851704" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.852717" 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-08-10T02:10:10.852366" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.853559" 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-08-10T02:10:10.852932" 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-08-10T02:10:10.853740" elapsed="0.000181"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-08-10T02:10:10.851673" 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-08-10T02:10:10.854504" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.854244" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.854123" elapsed="0.000627"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.855237" 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-08-10T02:10:10.854891" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.856067" 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-08-10T02:10:10.855435" 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-08-10T02:10:10.856251" elapsed="0.000203"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-08-10T02:10:10.854094" 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-08-10T02:10:10.856906" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.856671" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.856657" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.857663" 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-08-10T02:10:10.857291" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.858455" 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-08-10T02:10:10.857841" 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-08-10T02:10:10.858635" elapsed="0.000180"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-08-10T02:10:10.856627" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.859258" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.859026" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.859012" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.860054" 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-08-10T02:10:10.859703" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.860855" 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-08-10T02:10:10.860231" 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-08-10T02:10:10.861036" elapsed="0.000188"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-08-10T02:10:10.858982" 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-08-10T02:10:10.861703" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.861468" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.861451" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.862454" 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-08-10T02:10:10.862087" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.863228" 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-08-10T02:10:10.862632" 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-08-10T02:10:10.863427" elapsed="0.000187"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-08-10T02:10:10.861422" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.864098" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.863864" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.863849" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.864899" 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-08-10T02:10:10.864549" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.865694" 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-08-10T02:10:10.865078" 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-08-10T02:10:10.865875" elapsed="0.000180"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-08-10T02:10:10.863819" 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-08-10T02:10:10.866521" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.866267" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.866253" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.867252" 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-08-10T02:10:10.866906" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.868075" 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-08-10T02:10:10.867449" 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-08-10T02:10:10.868255" elapsed="0.000202"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-08-10T02:10:10.866224" 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-08-10T02:10:10.868905" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.868672" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.868657" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.869658" 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-08-10T02:10:10.869290" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.870454" 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-08-10T02:10:10.869836" 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-08-10T02:10:10.870634" elapsed="0.000181"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-08-10T02:10:10.868628" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.871980" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.871708" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.871016" elapsed="0.001215"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.872748" 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-08-10T02:10:10.872393" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.873551" 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-08-10T02:10:10.872928" 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-08-10T02:10:10.873733" elapsed="0.000182"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-08-10T02:10:10.870987" elapsed="0.002964"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.874383" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.874129" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.874114" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.875130" 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-08-10T02:10:10.874782" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.875961" 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-08-10T02:10:10.875308" 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-08-10T02:10:10.876142" elapsed="0.000190"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-08-10T02:10:10.874085" elapsed="0.002337"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.876839" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.876604" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.876589" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.877594" 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-08-10T02:10:10.877223" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.878388" 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-08-10T02:10:10.877772" 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-08-10T02:10:10.878571" elapsed="0.000180"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-08-10T02:10:10.876560" 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-08-10T02:10:10.879196" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.878965" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.878950" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.879983" 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-08-10T02:10:10.879599" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.880787" 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-08-10T02:10:10.880162" 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-08-10T02:10:10.880967" elapsed="0.000182"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-08-10T02:10:10.878922" 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-08-10T02:10:10.881618" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.881384" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.881369" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.882366" 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-08-10T02:10:10.882000" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.883142" 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-08-10T02:10:10.882547" 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-08-10T02:10:10.883320" elapsed="0.000202"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-08-10T02:10:10.881320" 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-08-10T02:10:10.883996" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.883735" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.883720" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.884751" 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-08-10T02:10:10.884403" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.885546" 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-08-10T02:10:10.884929" 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-08-10T02:10:10.885726" elapsed="0.000182"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-08-10T02:10:10.883691" 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-08-10T02:10:10.886378" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.886124" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.886109" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.887129" 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-08-10T02:10:10.886779" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.887970" 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-08-10T02:10:10.887309" 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-08-10T02:10:10.888190" elapsed="0.000208"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-08-10T02:10:10.886079" 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-08-10T02:10:10.888969" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.888726" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.888603" elapsed="0.000611"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.889730" 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-08-10T02:10:10.889374" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.890528" 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-08-10T02:10:10.889909" 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-08-10T02:10:10.890710" elapsed="0.000181"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-08-10T02:10:10.888574" elapsed="0.002355"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.891375" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.891106" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.891091" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.892142" 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-08-10T02:10:10.891764" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.892953" 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-08-10T02:10:10.892321" 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-08-10T02:10:10.893136" elapsed="0.000181"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-08-10T02:10:10.891062" 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-08-10T02:10:10.893786" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.893552" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.893537" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.894535" 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-08-10T02:10:10.894168" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.895314" 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-08-10T02:10:10.894717" 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-08-10T02:10:10.895516" elapsed="0.000183"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-08-10T02:10:10.893508" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.896183" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.895911" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.895896" elapsed="0.000560"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.896948" 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-08-10T02:10:10.896599" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.897747" 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-08-10T02:10:10.897129" 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-08-10T02:10:10.897929" elapsed="0.000181"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-08-10T02:10:10.895868" 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-08-10T02:10:10.898597" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.898330" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.898314" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.899359" 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-08-10T02:10:10.898986" elapsed="0.000441"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.900219" 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-08-10T02:10:10.899585" 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-08-10T02:10:10.900421" elapsed="0.000184"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-08-10T02:10:10.898284" 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-08-10T02:10:10.901055" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.900820" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.900805" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.901814" 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-08-10T02:10:10.901463" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.902617" 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-08-10T02:10:10.901993" 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-08-10T02:10:10.902800" elapsed="0.000183"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-08-10T02:10:10.900776" 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-08-10T02:10:10.903449" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.903197" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.903182" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.904221" 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-08-10T02:10:10.903839" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.905029" 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-08-10T02:10:10.904418" 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-08-10T02:10:10.905210" elapsed="0.000200"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-08-10T02:10:10.903153" 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-08-10T02:10:10.905983" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.905741" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.905611" elapsed="0.000620"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.906751" 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-08-10T02:10:10.906394" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.907550" 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-08-10T02:10:10.906930" 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-08-10T02:10:10.907732" elapsed="0.000183"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-08-10T02:10:10.905582" 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-08-10T02:10:10.908420" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.908160" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.908145" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.909164" 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-08-10T02:10:10.908814" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.909962" 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-08-10T02:10:10.909360" 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-08-10T02:10:10.910144" elapsed="0.000182"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-08-10T02:10:10.908115" 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-08-10T02:10:10.910830" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.910560" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.910545" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.911590" 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-08-10T02:10:10.911220" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.912427" 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-08-10T02:10:10.911770" 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-08-10T02:10:10.912617" elapsed="0.000183"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-08-10T02:10:10.910516" 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-08-10T02:10:10.913246" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.913014" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.912999" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.914000" 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-08-10T02:10:10.913653" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.914808" 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-08-10T02:10:10.914178" 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-08-10T02:10:10.914987" elapsed="0.000181"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-08-10T02:10:10.912970" 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-08-10T02:10:10.915634" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.915400" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.915386" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.916411" 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-08-10T02:10:10.916016" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.917185" 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-08-10T02:10:10.916588" 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-08-10T02:10:10.917383" elapsed="0.000183"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-08-10T02:10:10.915355" 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-08-10T02:10:10.918014" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.917782" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.917766" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.918762" 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-08-10T02:10:10.918415" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.919553" 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-08-10T02:10:10.918938" 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-08-10T02:10:10.919733" elapsed="0.000180"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-08-10T02:10:10.917736" 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-08-10T02:10:10.920413" elapsed="0.000193"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.920157" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.920110" elapsed="0.000557"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.921155" 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-08-10T02:10:10.920809" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.921959" 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-08-10T02:10:10.921337" 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-08-10T02:10:10.922175" elapsed="0.000204"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-08-10T02:10:10.920082" 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-08-10T02:10:10.922947" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.922705" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.922582" elapsed="0.000610"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.923702" 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-08-10T02:10:10.923352" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.924540" 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-08-10T02:10:10.923883" 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-08-10T02:10:10.924724" elapsed="0.000182"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-08-10T02:10:10.922552" 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-08-10T02:10:10.925374" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.925121" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.925106" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.926109" 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-08-10T02:10:10.925763" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.926912" 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-08-10T02:10:10.926292" 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-08-10T02:10:10.927092" elapsed="0.000181"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-08-10T02:10:10.925077" 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-08-10T02:10:10.927744" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.927513" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.927498" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.928538" 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-08-10T02:10:10.928128" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.929338" 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-08-10T02:10:10.928725" 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-08-10T02:10:10.929536" elapsed="0.000182"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-08-10T02:10:10.927466" 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-08-10T02:10:10.930165" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.929931" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.929916" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.930918" 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-08-10T02:10:10.930574" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.931716" 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-08-10T02:10:10.931099" 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-08-10T02:10:10.931894" elapsed="0.000181"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-08-10T02:10:10.929888" 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-08-10T02:10:10.932573" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.932314" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.932297" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.933308" 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-08-10T02:10:10.932957" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.934163" 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-08-10T02:10:10.933547" 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-08-10T02:10:10.934367" elapsed="0.000187"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-08-10T02:10:10.932266" 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-08-10T02:10:10.935003" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.934770" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.934755" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.935754" 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-08-10T02:10:10.935405" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.936580" 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-08-10T02:10:10.935930" 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-08-10T02:10:10.936763" elapsed="0.000182"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-08-10T02:10:10.934726" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.937413" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.937160" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.937146" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.938149" 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-08-10T02:10:10.937801" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.938952" 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-08-10T02:10:10.938325" 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-08-10T02:10:10.939130" elapsed="0.000180"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-08-10T02:10:10.937117" 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-08-10T02:10:10.939904" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.939663" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.939539" elapsed="0.000610"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.940695" 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-08-10T02:10:10.940322" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.941497" 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-08-10T02:10:10.940873" 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-08-10T02:10:10.941677" elapsed="0.000181"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-08-10T02:10:10.939510" elapsed="0.002385"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.942303" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.942070" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.942056" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.943055" 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-08-10T02:10:10.942709" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.943853" 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-08-10T02:10:10.943232" 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-08-10T02:10:10.944033" elapsed="0.000180"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-08-10T02:10:10.942027" 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-08-10T02:10:10.944711" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.944475" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.944460" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.945511" 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-08-10T02:10:10.945139" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.946292" 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-08-10T02:10:10.945692" 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-08-10T02:10:10.946495" elapsed="0.000182"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-08-10T02:10:10.944430" 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-08-10T02:10:10.947123" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.946890" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.946876" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.947877" 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-08-10T02:10:10.947531" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.948697" 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-08-10T02:10:10.948056" 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-08-10T02:10:10.948880" elapsed="0.000181"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-08-10T02:10:10.946847" 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-08-10T02:10:10.949530" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.949276" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.949262" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.950258" 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-08-10T02:10:10.949914" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.951052" 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-08-10T02:10:10.950455" 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-08-10T02:10:10.951232" elapsed="0.000201"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-08-10T02:10:10.949233" 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-08-10T02:10:10.951879" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.951646" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.951630" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.952664" 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-08-10T02:10:10.952264" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.953461" 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-08-10T02:10:10.952844" 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-08-10T02:10:10.953640" elapsed="0.000181"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-08-10T02:10:10.951602" 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-08-10T02:10:10.954265" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.954034" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.954019" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.955015" 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-08-10T02:10:10.954670" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.955810" 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-08-10T02:10:10.955192" 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-08-10T02:10:10.955988" elapsed="0.000184"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-08-10T02:10:10.953991" 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-08-10T02:10:10.956831" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.956585" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.956464" elapsed="0.000614"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.957595" 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-08-10T02:10:10.957219" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.958407" 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-08-10T02:10:10.957781" 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-08-10T02:10:10.958594" elapsed="0.000180"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-08-10T02:10:10.956432" 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-08-10T02:10:10.959223" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.958991" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.958976" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.959972" 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-08-10T02:10:10.959626" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.960791" 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-08-10T02:10:10.960149" 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-08-10T02:10:10.960972" elapsed="0.000181"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-08-10T02:10:10.958947" 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-08-10T02:10:10.961620" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.961387" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.961371" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.962360" 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-08-10T02:10:10.961999" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.963131" 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-08-10T02:10:10.962538" 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-08-10T02:10:10.963311" elapsed="0.000201"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-08-10T02:10:10.961323" 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-08-10T02:10:10.963984" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.963750" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.963735" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.964769" 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-08-10T02:10:10.964384" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.965559" 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-08-10T02:10:10.964945" 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-08-10T02:10:10.965738" elapsed="0.000179"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-08-10T02:10:10.963704" 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-08-10T02:10:10.966379" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.966129" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.966114" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.967111" 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-08-10T02:10:10.966765" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.967907" 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-08-10T02:10:10.967288" 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-08-10T02:10:10.968123" elapsed="0.000182"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-08-10T02:10:10.966085" 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-08-10T02:10:10.968790" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.968554" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.968539" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.969549" 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-08-10T02:10:10.969181" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.970325" 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-08-10T02:10:10.969728" 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-08-10T02:10:10.970526" elapsed="0.000182"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-08-10T02:10:10.968509" 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-08-10T02:10:10.971153" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.970921" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.970906" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.971906" 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-08-10T02:10:10.971559" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.972733" 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-08-10T02:10:10.972084" 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-08-10T02:10:10.972917" elapsed="0.000181"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-08-10T02:10:10.970877" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.973681" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.973439" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.973296" elapsed="0.000630"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.974443" 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-08-10T02:10:10.974067" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.975219" 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-08-10T02:10:10.974622" 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-08-10T02:10:10.975416" elapsed="0.000183"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-08-10T02:10:10.973267" 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-08-10T02:10:10.976043" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.975810" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.975795" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.976820" 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-08-10T02:10:10.976443" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.977622" 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-08-10T02:10:10.977005" 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-08-10T02:10:10.977802" elapsed="0.000182"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-08-10T02:10:10.975766" elapsed="0.002255"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-08-10T02:10:10.735525" elapsed="0.242527"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.979330" 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-08-10T02:10:10.978207" elapsed="0.001168"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:10.979471" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:10:10.979640" 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-08-10T02:10:10.681122" elapsed="0.298545"/>
</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-08-10T02:10:10.981051" 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-08-10T02:10:10.980777" elapsed="0.000347">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-08-10T02:10:10.981217" 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-08-10T02:10:10.980396" elapsed="0.000845"/>
</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-08-10T02:10:10.981577" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:10.981311" elapsed="0.000324"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.982141" 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-08-10T02:10:10.981855" elapsed="0.000311"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.981658" elapsed="0.000543"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.981293" elapsed="0.000929"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.984538" 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-08-10T02:10:10.982390" elapsed="0.002174"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:10.984630" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:10.984783" 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-08-10T02:10:10.980029" elapsed="0.004779"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.986328" 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-08-10T02:10:10.986079" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.986778" 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-08-10T02:10:10.986544" elapsed="0.000953"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.987894" 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-08-10T02:10:10.987650" elapsed="0.000287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.988321" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:10.988085" elapsed="0.000302"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:10.989234" 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-08-10T02:10:10.989036" elapsed="0.000224"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-08-10T02:10:10.989602" 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-08-10T02:10:10.989430" elapsed="0.000198"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-08-10T02:10:10.989776" elapsed="0.000187"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:10.990377" 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-08-10T02:10:10.990116" elapsed="0.000305"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-08-10T02:10:10.990462" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:10.990614" 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-08-10T02:10:10.988595" elapsed="0.002044"/>
</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-08-10T02:10:11.026671" level="INFO">POST Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.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-08-10T02:10:11.027046" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:10:11.027257" 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-08-10T02:10:10.992888" elapsed="0.034427"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:10.990859" elapsed="0.036600"/>
</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-08-10T02:10:11.027859" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.027519" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:10.990690" elapsed="0.037363"/>
</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-08-10T02:10:11.035460" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.030425" elapsed="0.005130"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.029905" elapsed="0.005727"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.029865" elapsed="0.005822"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.039175" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.036292" elapsed="0.002928"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.035806" elapsed="0.003448"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.035771" elapsed="0.003508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.039849" 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-08-10T02:10:11.039473" elapsed="0.000404"/>
</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-08-10T02:10:11.040189" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.039944" elapsed="0.000301"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.040757" 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-08-10T02:10:11.040460" elapsed="0.000323"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.040268" elapsed="0.000550"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.039927" elapsed="0.000912"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.041403" 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-08-10T02:10:11.041020" elapsed="0.000410"/>
</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-08-10T02:10:11.041738" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.041497" elapsed="0.000296"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.042273" 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-08-10T02:10:11.041985" elapsed="0.000313"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.041817" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.041480" elapsed="0.000892"/>
</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-08-10T02:10:11.042521" elapsed="0.000341"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:10:11.043298" 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-08-10T02:10:11.043024" elapsed="0.000300"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.043502" elapsed="0.002217"/>
</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-08-10T02:10:11.028871" elapsed="0.016910"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:11.045956" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:11.045851" elapsed="0.000149"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.045834" elapsed="0.000188"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:10:11.048425" 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-08-10T02:10:11.046165" elapsed="0.002287"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:10:11.048500" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:11.048651" 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-08-10T02:10:10.985136" elapsed="0.063540"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.048783" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:11.048935" 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-08-10T02:10:10.597653" elapsed="0.451307"/>
</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-08-10T02:10:11.049317" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.049080" elapsed="0.000324"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.049063" elapsed="0.000365"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.049462" 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-08-10T02:10:10.594963" elapsed="0.454624"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:10:10.583533" elapsed="0.466100"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.050265" 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-08-10T02:10:11.049868" 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-08-10T02:10:11.096136" 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-08-10T02:10:11.095761" elapsed="0.000404"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.096897" 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-08-10T02:10:11.096675" elapsed="0.000289">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-08-10T02:10:11.097058" 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-08-10T02:10:11.096327" elapsed="0.000755"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.097663" 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-08-10T02:10:11.097245" elapsed="0.000446"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.097983" 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-08-10T02:10:11.098133" 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-08-10T02:10:11.097848" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.098572" 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-08-10T02:10:11.098311" elapsed="0.000305"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.099570" 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-08-10T02:10:11.099291" elapsed="0.000323"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.100032" 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-08-10T02:10:11.099771" elapsed="0.000287"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.100784" 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-08-10T02:10:11.100427" elapsed="0.000383"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-08-10T02:10:11.101868" 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-08-10T02:10:11.101401" elapsed="0.000494"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-08-10T02:10:11.101982" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:10:11.102139" 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-08-10T02:10:11.100994" elapsed="0.001170"/>
</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-08-10T02:10:11.102315" elapsed="0.000296"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:2</var>
<status status="PASS" start="2026-08-10T02:10:11.100276" elapsed="0.002377"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-08-10T02:10:11.100109" elapsed="0.002579"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:11.102732" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:10:11.102887" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:11.098971" elapsed="0.003941"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.098683" elapsed="0.004261"/>
</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-08-10T02:10:11.103116" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.102968" elapsed="0.000202"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.098665" elapsed="0.004525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.103878" 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-08-10T02:10:11.103329" elapsed="0.000577"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.103954" 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-08-10T02:10:11.095134" elapsed="0.008944"/>
</kw>
<msg time="2026-08-10T02:10:11.104133" 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-08-10T02:10:11.083054" elapsed="0.021125"/>
</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-08-10T02:10:11.116236" 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-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-08-10T02:10:11.128105" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:11.139937" 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-08-10T02:10:11.140133" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:11.140306" elapsed="0.000019"/>
</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-08-10T02:10:11.140692" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.140548" elapsed="0.000199"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:11.140533" elapsed="0.000237"/>
</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-08-10T02:10:11.140908" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:11.141112" 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-08-10T02:10:11.141276" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:11.140503" elapsed="0.000825"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:11.140399" elapsed="0.000975"/>
</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-08-10T02:10:11.141521" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:11.141596" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:11.141753" 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-08-10T02:10:11.078894" elapsed="0.062885"/>
</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-08-10T02:10:11.152290" elapsed="0.000363"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.165445" 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-08-10T02:10:11.165052" elapsed="0.000421"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.166210" 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-08-10T02:10:11.165993" elapsed="0.000285">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-08-10T02:10:11.166390" 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-08-10T02:10:11.165633" elapsed="0.000783"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.166957" 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-08-10T02:10:11.166579" elapsed="0.000405"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.167274" 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-08-10T02:10:11.167428" 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-08-10T02:10:11.167141" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.167851" level="INFO">{
  "flow": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.167613" elapsed="0.000283"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:11.168247" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.167961" elapsed="0.000343"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.168783" 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-08-10T02:10:11.168494" elapsed="0.000315"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.168328" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.167943" elapsed="0.000921"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.169449" 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-08-10T02:10:11.169005" elapsed="0.000471"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.169525" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:11.169673" 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-08-10T02:10:11.164444" elapsed="0.005253"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.182785" 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-08-10T02:10:11.182412" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.183524" 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-08-10T02:10:11.183297" elapsed="0.000288">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-08-10T02:10:11.183677" 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-08-10T02:10:11.182973" elapsed="0.000728"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.184237" 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-08-10T02:10:11.183861" elapsed="0.000403"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.184571" 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-08-10T02:10:11.184693" 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-08-10T02:10:11.184439" elapsed="0.000279"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.185107" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.184869" elapsed="0.000281"/>
</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-08-10T02:10:11.185517" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.185214" elapsed="0.000361"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.186068" 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-08-10T02:10:11.185744" elapsed="0.000350"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.185599" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.185197" elapsed="0.000953"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.186736" 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-08-10T02:10:11.186291" elapsed="0.000472"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.186811" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:11.186960" 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-08-10T02:10:11.181742" elapsed="0.005243"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.199847" 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-08-10T02:10:11.199475" elapsed="0.000400"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.200583" 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-08-10T02:10:11.200377" elapsed="0.000268">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-08-10T02:10:11.200737" 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-08-10T02:10:11.200033" elapsed="0.000728"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.201297" 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-08-10T02:10:11.200922" elapsed="0.000402"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.201638" 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-08-10T02:10:11.201794" 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-08-10T02:10:11.201506" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.202247" 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-08-10T02:10:11.201973" elapsed="0.000324"/>
</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-08-10T02:10:11.202672" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.202381" elapsed="0.000348"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.203184" 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-08-10T02:10:11.202896" elapsed="0.000314"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.202753" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.202362" elapsed="0.000905"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.204027" 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-08-10T02:10:11.203429" elapsed="0.000626"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.204105" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:11.204258" 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-08-10T02:10:11.198919" elapsed="0.005365"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.204701" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:11.204462" elapsed="0.000265"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.205239" 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-08-10T02:10:11.204881" elapsed="0.000384"/>
</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-08-10T02:10:11.205893" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.205664" elapsed="0.000285"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.205649" elapsed="0.000324"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.206514" 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-08-10T02:10:11.206142" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.207478" 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-08-10T02:10:11.206695" 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-08-10T02:10:11.207661" elapsed="0.000194"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-08-10T02:10:11.205618" 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-08-10T02:10:11.208305" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.208070" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.208055" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.209063" 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-08-10T02:10:11.208716" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.209864" 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-08-10T02:10:11.209241" 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-08-10T02:10:11.210045" elapsed="0.000201"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-08-10T02:10:11.208026" 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-08-10T02:10:11.210749" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.210514" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.210499" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.211504" 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-08-10T02:10:11.211135" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.212280" 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-08-10T02:10:11.211682" 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-08-10T02:10:11.212481" elapsed="0.000181"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-08-10T02:10:11.210470" 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-08-10T02:10:11.213110" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.212876" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.212861" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.213867" 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-08-10T02:10:11.213521" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.214693" 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-08-10T02:10:11.214045" 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-08-10T02:10:11.214874" elapsed="0.000181"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-08-10T02:10:11.212832" 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-08-10T02:10:11.215524" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.215270" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.215255" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.216253" 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-08-10T02:10:11.215910" elapsed="0.000369"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.217049" 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-08-10T02:10:11.216453" 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-08-10T02:10:11.217230" elapsed="0.000200"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-08-10T02:10:11.215226" 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-08-10T02:10:11.217879" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.217647" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.217633" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.218660" 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-08-10T02:10:11.218293" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.219452" 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-08-10T02:10:11.218837" 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-08-10T02:10:11.219633" elapsed="0.000180"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-08-10T02:10:11.217604" 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-08-10T02:10:11.220259" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.220026" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.220011" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.221010" 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-08-10T02:10:11.220664" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.221810" 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-08-10T02:10:11.221190" 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-08-10T02:10:11.222026" elapsed="0.000213"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-08-10T02:10:11.219982" 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-08-10T02:10:11.222711" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.222474" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.222459" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.223465" 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-08-10T02:10:11.223096" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.225169" 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-08-10T02:10:11.223646" elapsed="0.001552"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.225371" elapsed="0.000186"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-08-10T02:10:11.222430" 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-08-10T02:10:11.226006" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.225773" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.225759" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.226781" 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-08-10T02:10:11.226425" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.227577" 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-08-10T02:10:11.226961" 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-08-10T02:10:11.227758" elapsed="0.000179"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-08-10T02:10:11.225730" 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-08-10T02:10:11.228402" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.228151" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.228136" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.229130" 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-08-10T02:10:11.228785" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.229929" 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-08-10T02:10:11.229309" 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-08-10T02:10:11.230110" elapsed="0.000213"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-08-10T02:10:11.228107" 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-08-10T02:10:11.230796" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.230562" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.230548" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.231549" 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-08-10T02:10:11.231180" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.232335" 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-08-10T02:10:11.231729" 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-08-10T02:10:11.232532" elapsed="0.000181"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-08-10T02:10:11.230518" 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-08-10T02:10:11.233160" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.232927" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.232913" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.233910" 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-08-10T02:10:11.233563" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.234795" 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-08-10T02:10:11.234125" 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-08-10T02:10:11.234977" elapsed="0.000181"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-08-10T02:10:11.232883" 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-08-10T02:10:11.235628" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.235392" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.235377" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.236379" 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-08-10T02:10:11.236013" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.237161" 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-08-10T02:10:11.236559" 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-08-10T02:10:11.237361" elapsed="0.000183"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-08-10T02:10:11.235328" 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-08-10T02:10:11.237992" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.237760" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.237745" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.238778" 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-08-10T02:10:11.238427" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.239586" 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-08-10T02:10:11.238957" 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-08-10T02:10:11.239768" elapsed="0.000180"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-08-10T02:10:11.237716" 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-08-10T02:10:11.240420" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.240166" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.240151" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.241158" 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-08-10T02:10:11.240809" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.242084" 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-08-10T02:10:11.241356" elapsed="0.000757"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.242269" elapsed="0.000215"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-08-10T02:10:11.240122" 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-08-10T02:10:11.242937" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.242702" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.242687" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.243699" 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-08-10T02:10:11.243325" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.244497" 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-08-10T02:10:11.243878" 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-08-10T02:10:11.244679" elapsed="0.000181"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-08-10T02:10:11.242659" 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-08-10T02:10:11.245372" elapsed="0.000193"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.245075" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.245060" elapsed="0.000568"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.246121" 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-08-10T02:10:11.245771" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.246953" 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-08-10T02:10:11.246305" 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-08-10T02:10:11.247136" elapsed="0.000182"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-08-10T02:10:11.245031" 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-08-10T02:10:11.247791" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.247556" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.247542" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.248543" 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-08-10T02:10:11.248176" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.249322" 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-08-10T02:10:11.248722" 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-08-10T02:10:11.249529" elapsed="0.000182"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-08-10T02:10:11.247513" 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-08-10T02:10:11.250160" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.249926" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.249911" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.250944" 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-08-10T02:10:11.250593" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.251747" 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-08-10T02:10:11.251123" 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-08-10T02:10:11.251929" elapsed="0.000181"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-08-10T02:10:11.249882" 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-08-10T02:10:11.252585" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.252326" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.252311" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.253315" 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-08-10T02:10:11.252968" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.254111" 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-08-10T02:10:11.253514" 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-08-10T02:10:11.254288" elapsed="0.000230"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-08-10T02:10:11.252282" 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-08-10T02:10:11.254969" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.254735" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.254720" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.255720" 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-08-10T02:10:11.255371" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.256515" 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-08-10T02:10:11.255898" 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-08-10T02:10:11.256733" elapsed="0.000183"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-08-10T02:10:11.254691" 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-08-10T02:10:11.257388" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.257133" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.257118" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.258243" 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-08-10T02:10:11.257777" elapsed="0.000492"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.259064" 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-08-10T02:10:11.258451" 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-08-10T02:10:11.259246" elapsed="0.000203"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-08-10T02:10:11.257089" 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-08-10T02:10:11.259899" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.259665" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.259650" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.260655" 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-08-10T02:10:11.260285" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.261455" 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-08-10T02:10:11.260835" 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-08-10T02:10:11.261641" elapsed="0.000181"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-08-10T02:10:11.259621" 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-08-10T02:10:11.262269" elapsed="0.000233"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.262036" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.262021" elapsed="0.000545"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.263058" 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-08-10T02:10:11.262707" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.263858" 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-08-10T02:10:11.263237" 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-08-10T02:10:11.264039" elapsed="0.000181"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-08-10T02:10:11.261993" 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-08-10T02:10:11.264692" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.264456" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.264441" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.265446" 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-08-10T02:10:11.265080" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.266222" 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-08-10T02:10:11.265626" 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-08-10T02:10:11.266423" elapsed="0.000207"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-08-10T02:10:11.264412" 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-08-10T02:10:11.267080" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.266845" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.266831" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.267832" 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-08-10T02:10:11.267486" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.268674" 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-08-10T02:10:11.268050" 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-08-10T02:10:11.268859" elapsed="0.000180"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-08-10T02:10:11.266801" 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-08-10T02:10:11.269508" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.269253" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.269239" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.270239" 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-08-10T02:10:11.269894" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.271072" 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-08-10T02:10:11.270437" 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-08-10T02:10:11.271254" elapsed="0.000206"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-08-10T02:10:11.269210" 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-08-10T02:10:11.271909" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.271675" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.271661" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.272662" 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-08-10T02:10:11.272294" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.273458" 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-08-10T02:10:11.272839" 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-08-10T02:10:11.273638" elapsed="0.000182"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-08-10T02:10:11.271632" 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-08-10T02:10:11.274270" elapsed="0.000351"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.274036" elapsed="0.000624"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.274020" elapsed="0.000672"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.275197" 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-08-10T02:10:11.274846" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.276001" 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-08-10T02:10:11.275398" 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-08-10T02:10:11.276181" elapsed="0.000201"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-08-10T02:10:11.273990" elapsed="0.002430"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.276832" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.276597" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.276582" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.277593" 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-08-10T02:10:11.277218" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.278392" 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-08-10T02:10:11.277774" 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-08-10T02:10:11.278598" elapsed="0.000186"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-08-10T02:10:11.276553" 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-08-10T02:10:11.279238" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.279002" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.278987" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.280035" 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-08-10T02:10:11.279684" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.280844" 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-08-10T02:10:11.280216" 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-08-10T02:10:11.281026" elapsed="0.000182"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-08-10T02:10:11.278958" 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-08-10T02:10:11.281680" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.281446" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.281431" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.282435" 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-08-10T02:10:11.282065" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.283233" 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-08-10T02:10:11.282627" 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-08-10T02:10:11.283434" elapsed="0.000185"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-08-10T02:10:11.281401" 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-08-10T02:10:11.284069" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.283835" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.283820" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.284818" 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-08-10T02:10:11.284472" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.285611" 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-08-10T02:10:11.284995" 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-08-10T02:10:11.285791" elapsed="0.000182"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-08-10T02:10:11.283791" 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-08-10T02:10:11.286438" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.286186" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.286171" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.287200" 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-08-10T02:10:11.286851" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.287997" 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-08-10T02:10:11.287397" 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-08-10T02:10:11.288176" elapsed="0.000200"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-08-10T02:10:11.286142" 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-08-10T02:10:11.288833" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.288598" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.288582" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.289591" 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-08-10T02:10:11.289221" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.290390" 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-08-10T02:10:11.289769" 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-08-10T02:10:11.290575" elapsed="0.000208"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-08-10T02:10:11.288552" 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-08-10T02:10:11.291410" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.291040" elapsed="0.000596"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.291026" elapsed="0.000634"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.292158" 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-08-10T02:10:11.291803" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.292961" 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-08-10T02:10:11.292357" 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-08-10T02:10:11.293144" elapsed="0.000182"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-08-10T02:10:11.290996" 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-08-10T02:10:11.293798" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.293562" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.293547" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.294549" 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-08-10T02:10:11.294184" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.295370" 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-08-10T02:10:11.294753" 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-08-10T02:10:11.295552" elapsed="0.000181"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-08-10T02:10:11.293519" 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-08-10T02:10:11.296189" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.295945" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.295931" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.296943" 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-08-10T02:10:11.296595" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.297741" 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-08-10T02:10:11.297122" 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-08-10T02:10:11.297920" elapsed="0.000180"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-08-10T02:10:11.295902" 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-08-10T02:10:11.298565" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.298311" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.298297" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.299317" 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-08-10T02:10:11.298970" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.300117" 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-08-10T02:10:11.299516" 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-08-10T02:10:11.300297" elapsed="0.000202"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-08-10T02:10:11.298268" 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-08-10T02:10:11.300943" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.300711" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.300696" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.301690" 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-08-10T02:10:11.301324" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.302481" 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-08-10T02:10:11.301866" 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-08-10T02:10:11.302725" elapsed="0.000187"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-08-10T02:10:11.300668" 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-08-10T02:10:11.303383" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.303127" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.303113" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.304120" 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-08-10T02:10:11.303772" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.304921" 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-08-10T02:10:11.304300" 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-08-10T02:10:11.305101" elapsed="0.000182"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-08-10T02:10:11.303084" 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-08-10T02:10:11.305752" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.305518" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.305504" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.306504" 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-08-10T02:10:11.306136" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.307308" 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-08-10T02:10:11.306681" 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-08-10T02:10:11.307509" elapsed="0.000187"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-08-10T02:10:11.305474" 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-08-10T02:10:11.308258" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.308019" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.307895" elapsed="0.000630"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.309026" 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-08-10T02:10:11.308666" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.309824" 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-08-10T02:10:11.309204" 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-08-10T02:10:11.310004" elapsed="0.000182"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-08-10T02:10:11.307866" 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-08-10T02:10:11.310659" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.310420" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.310406" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.311447" 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-08-10T02:10:11.311078" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.312226" 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-08-10T02:10:11.311627" 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-08-10T02:10:11.312424" elapsed="0.000188"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-08-10T02:10:11.310375" 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-08-10T02:10:11.313064" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.312829" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.312814" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.313826" 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-08-10T02:10:11.313474" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.314681" 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-08-10T02:10:11.314043" 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-08-10T02:10:11.314884" elapsed="0.000185"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-08-10T02:10:11.312785" 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-08-10T02:10:11.315555" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.315292" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.315277" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.316289" 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-08-10T02:10:11.315940" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.317087" 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-08-10T02:10:11.316487" 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-08-10T02:10:11.317266" elapsed="0.000202"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-08-10T02:10:11.315246" 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-08-10T02:10:11.317919" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.317684" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.317669" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.318674" 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-08-10T02:10:11.318306" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.320740" 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-08-10T02:10:11.320109" 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-08-10T02:10:11.320923" elapsed="0.000183"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-08-10T02:10:11.317640" elapsed="0.003503"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.321584" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.321324" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.321308" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.322318" 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-08-10T02:10:11.321970" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.323152" 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-08-10T02:10:11.322517" 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-08-10T02:10:11.323331" elapsed="0.000201"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-08-10T02:10:11.321278" 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-08-10T02:10:11.323981" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.323748" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.323732" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.324737" 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-08-10T02:10:11.324384" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.325534" 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-08-10T02:10:11.324914" 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-08-10T02:10:11.325715" elapsed="0.000181"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-08-10T02:10:11.323703" 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-08-10T02:10:11.327162" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.326237" elapsed="0.001174"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.326099" elapsed="0.001338"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.327934" 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-08-10T02:10:11.327581" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.328734" 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-08-10T02:10:11.328113" 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-08-10T02:10:11.328914" elapsed="0.000182"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-08-10T02:10:11.326070" elapsed="0.003062"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.329568" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.329309" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.329295" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.330297" 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-08-10T02:10:11.329951" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.331109" 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-08-10T02:10:11.330494" 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-08-10T02:10:11.331290" elapsed="0.000207"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-08-10T02:10:11.329266" 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-08-10T02:10:11.331944" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.331711" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.331696" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.332694" 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-08-10T02:10:11.332326" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.333489" 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-08-10T02:10:11.332871" 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-08-10T02:10:11.333670" elapsed="0.000181"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-08-10T02:10:11.331667" 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-08-10T02:10:11.334295" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.334064" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.334049" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.335091" 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-08-10T02:10:11.334709" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.335895" 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-08-10T02:10:11.335270" 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-08-10T02:10:11.336074" elapsed="0.000181"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-08-10T02:10:11.334020" 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-08-10T02:10:11.336728" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.336492" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.336477" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.337478" 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-08-10T02:10:11.337112" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.338253" 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-08-10T02:10:11.337655" 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-08-10T02:10:11.339103" elapsed="0.000187"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-08-10T02:10:11.336447" elapsed="0.002881"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.339782" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.339546" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.339531" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.340547" 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-08-10T02:10:11.340174" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.341329" 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-08-10T02:10:11.340728" 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-08-10T02:10:11.341536" elapsed="0.000183"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-08-10T02:10:11.339502" 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-08-10T02:10:11.342164" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.341932" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.341917" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.342920" 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-08-10T02:10:11.342573" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.343762" 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-08-10T02:10:11.343136" 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-08-10T02:10:11.343942" elapsed="0.000180"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-08-10T02:10:11.341888" 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-08-10T02:10:11.344705" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.344466" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.344322" elapsed="0.000627"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.345457" 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-08-10T02:10:11.345090" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.346233" 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-08-10T02:10:11.345636" 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-08-10T02:10:11.346433" elapsed="0.000188"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-08-10T02:10:11.344293" 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-08-10T02:10:11.347090" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.346836" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.346822" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.347840" 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-08-10T02:10:11.347495" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.348641" 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-08-10T02:10:11.348018" 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-08-10T02:10:11.348821" elapsed="0.000181"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-08-10T02:10:11.346792" 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-08-10T02:10:11.349468" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.349215" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.349200" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.350199" 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-08-10T02:10:11.349854" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.351071" 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-08-10T02:10:11.350436" 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-08-10T02:10:11.351254" elapsed="0.000202"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-08-10T02:10:11.349171" 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-08-10T02:10:11.351904" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.351671" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.351656" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.352659" 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-08-10T02:10:11.352290" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.353453" 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-08-10T02:10:11.352838" 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-08-10T02:10:11.353634" elapsed="0.000181"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-08-10T02:10:11.351627" 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-08-10T02:10:11.354261" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.354029" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.354014" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.355029" 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-08-10T02:10:11.354667" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.355823" 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-08-10T02:10:11.355209" 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-08-10T02:10:11.356004" elapsed="0.000181"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-08-10T02:10:11.353985" 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-08-10T02:10:11.356651" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.356417" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.356402" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.357398" 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-08-10T02:10:11.357033" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.358171" 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-08-10T02:10:11.357576" 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-08-10T02:10:11.358368" elapsed="0.000183"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-08-10T02:10:11.356372" 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-08-10T02:10:11.358993" elapsed="0.000215"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.358761" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.358747" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.359777" 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-08-10T02:10:11.359429" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.360574" 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-08-10T02:10:11.359954" 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-08-10T02:10:11.360753" elapsed="0.000180"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-08-10T02:10:11.358718" 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-08-10T02:10:11.361513" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.361255" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.361130" elapsed="0.000661"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.362282" 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-08-10T02:10:11.361934" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.363089" 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-08-10T02:10:11.362479" 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-08-10T02:10:11.363276" elapsed="0.000201"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-08-10T02:10:11.361101" 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-08-10T02:10:11.363924" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.363691" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.363676" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.364672" 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-08-10T02:10:11.364305" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.365465" 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-08-10T02:10:11.364849" 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-08-10T02:10:11.365644" elapsed="0.000181"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-08-10T02:10:11.363647" 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-08-10T02:10:11.366268" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.366036" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.366021" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.367016" 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-08-10T02:10:11.366671" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.367846" 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-08-10T02:10:11.367227" 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-08-10T02:10:11.368025" elapsed="0.000181"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-08-10T02:10:11.365992" 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-08-10T02:10:11.368671" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.368438" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.368424" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.369423" 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-08-10T02:10:11.369056" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.370200" 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-08-10T02:10:11.369602" 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-08-10T02:10:11.370399" elapsed="0.000183"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-08-10T02:10:11.368394" 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-08-10T02:10:11.371031" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.370798" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.370783" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.371825" 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-08-10T02:10:11.371475" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.372617" 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-08-10T02:10:11.372002" 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-08-10T02:10:11.372796" elapsed="0.000182"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-08-10T02:10:11.370754" 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-08-10T02:10:11.373479" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.373226" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.373211" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.374207" 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-08-10T02:10:11.373863" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.375004" 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-08-10T02:10:11.374403" 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-08-10T02:10:11.375219" elapsed="0.000201"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-08-10T02:10:11.373182" 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-08-10T02:10:11.375870" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.375634" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.375620" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.376626" 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-08-10T02:10:11.376256" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.377425" 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-08-10T02:10:11.376807" 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-08-10T02:10:11.377604" elapsed="0.000179"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-08-10T02:10:11.375591" 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-08-10T02:10:11.378360" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.378105" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.377982" elapsed="0.000627"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.379098" 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-08-10T02:10:11.378750" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.379925" 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-08-10T02:10:11.379297" 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-08-10T02:10:11.380109" elapsed="0.000184"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-08-10T02:10:11.377953" elapsed="0.002377"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.380766" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.380531" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.380516" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.381524" 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-08-10T02:10:11.381155" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.382301" 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-08-10T02:10:11.381703" 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-08-10T02:10:11.382505" elapsed="0.000183"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-08-10T02:10:11.380486" 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-08-10T02:10:11.383138" elapsed="0.000231"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.382902" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.382887" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.383924" 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-08-10T02:10:11.383575" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.384726" 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-08-10T02:10:11.384101" 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-08-10T02:10:11.384943" elapsed="0.000182"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-08-10T02:10:11.382858" 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-08-10T02:10:11.385597" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.385359" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.385326" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.386329" 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-08-10T02:10:11.385982" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.387136" 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-08-10T02:10:11.386528" 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-08-10T02:10:11.387355" elapsed="0.000203"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-08-10T02:10:11.385296" 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-08-10T02:10:11.388007" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.387773" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.387758" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.388791" 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-08-10T02:10:11.388439" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.389584" 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-08-10T02:10:11.388969" 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-08-10T02:10:11.389765" elapsed="0.000180"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-08-10T02:10:11.387729" 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-08-10T02:10:11.390409" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.390157" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.390142" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.391139" 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-08-10T02:10:11.390794" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.391986" 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-08-10T02:10:11.391382" 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-08-10T02:10:11.392164" elapsed="0.000201"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-08-10T02:10:11.390113" 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-08-10T02:10:11.392814" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.392580" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.392565" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.393567" 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-08-10T02:10:11.393200" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.394364" 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-08-10T02:10:11.393744" 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-08-10T02:10:11.394546" elapsed="0.000181"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-08-10T02:10:11.392536" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.395310" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.395053" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.394927" elapsed="0.000654"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.396072" 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-08-10T02:10:11.395723" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.396911" 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-08-10T02:10:11.396285" 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-08-10T02:10:11.397092" elapsed="0.000181"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-08-10T02:10:11.394898" 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-08-10T02:10:11.397751" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.397518" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.397503" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.398503" 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-08-10T02:10:11.398135" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.399278" 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-08-10T02:10:11.398682" 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-08-10T02:10:11.399507" elapsed="0.000182"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-08-10T02:10:11.397471" 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-08-10T02:10:11.400137" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.399903" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.399889" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.400889" 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-08-10T02:10:11.400542" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.401688" 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-08-10T02:10:11.401066" 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-08-10T02:10:11.401866" elapsed="0.000181"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-08-10T02:10:11.399859" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.402516" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.402261" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.402246" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.403250" 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-08-10T02:10:11.402901" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.404060" 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-08-10T02:10:11.403458" 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-08-10T02:10:11.404242" elapsed="0.000200"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-08-10T02:10:11.402217" 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-08-10T02:10:11.404892" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.404659" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.404644" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.405640" 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-08-10T02:10:11.405274" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.406432" 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-08-10T02:10:11.405817" 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-08-10T02:10:11.406611" elapsed="0.000180"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-08-10T02:10:11.404615" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.407273" elapsed="0.000235"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.407003" elapsed="0.000544"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.406989" elapsed="0.000583"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.408063" 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-08-10T02:10:11.407714" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.408863" 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-08-10T02:10:11.408241" 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-08-10T02:10:11.409044" elapsed="0.000182"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-08-10T02:10:11.406960" 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-08-10T02:10:11.409697" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.409463" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.409448" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.410447" 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-08-10T02:10:11.410079" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.411226" 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-08-10T02:10:11.410626" 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-08-10T02:10:11.411438" elapsed="0.000188"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-08-10T02:10:11.409418" 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-08-10T02:10:11.412191" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.411952" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.411828" elapsed="0.000629"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.412949" 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-08-10T02:10:11.412600" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.413752" 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-08-10T02:10:11.413127" 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-08-10T02:10:11.413935" elapsed="0.000181"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-08-10T02:10:11.411800" elapsed="0.002353"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.414586" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.414336" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.414317" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.415315" 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-08-10T02:10:11.414968" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.416146" 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-08-10T02:10:11.415542" 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-08-10T02:10:11.416326" elapsed="0.000202"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-08-10T02:10:11.414288" 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-08-10T02:10:11.416976" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.416744" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.416729" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.417732" 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-08-10T02:10:11.417378" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.418535" 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-08-10T02:10:11.417910" 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-08-10T02:10:11.418753" elapsed="0.000184"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-08-10T02:10:11.416700" 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-08-10T02:10:11.419404" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.419153" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.419139" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.420158" 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-08-10T02:10:11.419811" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.420955" 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-08-10T02:10:11.420355" 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-08-10T02:10:11.421135" elapsed="0.000180"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-08-10T02:10:11.419109" 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-08-10T02:10:11.421780" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.421548" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.421534" elapsed="0.000487"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.422525" 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-08-10T02:10:11.422160" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.423295" 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-08-10T02:10:11.422702" 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-08-10T02:10:11.423523" elapsed="0.000184"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-08-10T02:10:11.421505" 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-08-10T02:10:11.424154" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.423922" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.423906" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.424903" 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-08-10T02:10:11.424557" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.425696" 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-08-10T02:10:11.425079" 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-08-10T02:10:11.425875" elapsed="0.000180"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-08-10T02:10:11.423877" 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-08-10T02:10:11.426521" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.426267" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.426253" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.427246" 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-08-10T02:10:11.426902" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.428065" 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-08-10T02:10:11.427443" 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-08-10T02:10:11.428246" elapsed="0.000203"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-08-10T02:10:11.426224" 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-08-10T02:10:11.429573" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.429312" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.428651" elapsed="0.001169"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.430308" 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-08-10T02:10:11.429961" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.431144" 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-08-10T02:10:11.430543" 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-08-10T02:10:11.431326" elapsed="0.000229"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-08-10T02:10:11.428621" elapsed="0.002972"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.432010" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.431773" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.431758" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.432766" 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-08-10T02:10:11.432413" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.433560" 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-08-10T02:10:11.432944" 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-08-10T02:10:11.433739" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-08-10T02:10:11.431729" 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-08-10T02:10:11.434389" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.434136" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.434121" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.435119" 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-08-10T02:10:11.434773" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.435931" 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-08-10T02:10:11.435295" 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-08-10T02:10:11.436111" elapsed="0.000180"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-08-10T02:10:11.434092" 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-08-10T02:10:11.436760" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.436527" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.436513" elapsed="0.000488"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.437509" 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-08-10T02:10:11.437142" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.438280" 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-08-10T02:10:11.437686" 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-08-10T02:10:11.438479" elapsed="0.000181"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-08-10T02:10:11.436483" 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-08-10T02:10:11.439104" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.438872" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.438857" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.439888" 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-08-10T02:10:11.439508" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.440685" 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-08-10T02:10:11.440066" 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-08-10T02:10:11.440865" elapsed="0.000181"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-08-10T02:10:11.438828" 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-08-10T02:10:11.441516" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.441260" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.441246" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.442285" 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-08-10T02:10:11.441937" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.443086" 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-08-10T02:10:11.442485" 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-08-10T02:10:11.443266" elapsed="0.000202"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-08-10T02:10:11.441217" 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-08-10T02:10:11.443935" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.443695" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.443681" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.444689" 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-08-10T02:10:11.444318" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.445494" 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-08-10T02:10:11.444868" 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-08-10T02:10:11.445676" elapsed="0.000180"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-08-10T02:10:11.443651" 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-08-10T02:10:11.446442" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.446179" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.446056" elapsed="0.000635"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.447179" 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-08-10T02:10:11.446831" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.450755" 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-08-10T02:10:11.447377" elapsed="0.003407"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.450941" elapsed="0.000183"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-08-10T02:10:11.446027" elapsed="0.005134"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.451604" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.451362" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.451324" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.452377" 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-08-10T02:10:11.452005" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.453162" 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-08-10T02:10:11.452559" 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-08-10T02:10:11.453364" elapsed="0.000184"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-08-10T02:10:11.451295" elapsed="0.002291"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-08-10T02:10:11.205320" elapsed="0.248298"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.454911" 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-08-10T02:10:11.453775" elapsed="0.001165"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.455003" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:10:11.455175" 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-08-10T02:10:11.151434" elapsed="0.303768"/>
</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-08-10T02:10:11.456656" 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-08-10T02:10:11.456385" elapsed="0.000348">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-08-10T02:10:11.456827" 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-08-10T02:10:11.456022" elapsed="0.000829"/>
</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-08-10T02:10:11.457164" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.456921" elapsed="0.000300"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.457754" 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-08-10T02:10:11.457463" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.457245" elapsed="0.000570"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.456903" elapsed="0.000934"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.460173" 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-08-10T02:10:11.457988" elapsed="0.002211"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:11.460251" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:11.460427" 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-08-10T02:10:11.455631" elapsed="0.004822"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.461992" 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-08-10T02:10:11.461741" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.462443" 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-08-10T02:10:11.462186" elapsed="0.000947"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.463555" 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-08-10T02:10:11.463286" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.464018" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.463777" elapsed="0.000284"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:11.464879" 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-08-10T02:10:11.464685" elapsed="0.000220"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-08-10T02:10:11.465225" 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-08-10T02:10:11.465054" 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-08-10T02:10:11.465418" elapsed="0.000190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.466005" 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-08-10T02:10:11.465762" elapsed="0.000285"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-08-10T02:10:11.466089" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:11.466240" 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-08-10T02:10:11.464263" elapsed="0.002002"/>
</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-08-10T02:10:11.494748" level="INFO">POST Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.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-08-10T02:10:11.495099" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:10:11.495372" 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-08-10T02:10:11.468554" elapsed="0.026881"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.466509" elapsed="0.029030"/>
</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-08-10T02:10:11.495991" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.495598" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.466317" elapsed="0.029876"/>
</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-08-10T02:10:11.503569" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.498549" elapsed="0.005114"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.498027" elapsed="0.005715"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.497987" elapsed="0.005810"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.506654" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.504494" elapsed="0.002204"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.503918" elapsed="0.002815"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.503883" elapsed="0.002873"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.507309" 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-08-10T02:10:11.506937" elapsed="0.000417"/>
</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-08-10T02:10:11.507680" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.507425" elapsed="0.000312"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.508263" 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-08-10T02:10:11.507930" elapsed="0.000359"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.507759" elapsed="0.000565"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.507408" elapsed="0.000955"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.508895" 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-08-10T02:10:11.508535" elapsed="0.000386"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:11.509232" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.508989" elapsed="0.000300"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.509796" 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-08-10T02:10:11.509505" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.509312" elapsed="0.000545"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.508972" elapsed="0.000905"/>
</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-08-10T02:10:11.510026" elapsed="0.000358"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:10:11.510823" 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-08-10T02:10:11.510547" elapsed="0.000302"/>
</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-08-10T02:10:11.511002" elapsed="0.002227"/>
</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-08-10T02:10:11.497018" elapsed="0.016273"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:11.513488" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:11.513382" elapsed="0.000151"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.513363" elapsed="0.000191"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:10:11.515936" 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-08-10T02:10:11.513699" elapsed="0.002263"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:10:11.516010" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:11.516178" 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-08-10T02:10:11.460786" elapsed="0.055417"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.516309" elapsed="0.000043"/>
</return>
<msg time="2026-08-10T02:10:11.516482" 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-08-10T02:10:11.068241" elapsed="0.448265"/>
</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-08-10T02:10:11.516845" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.516611" elapsed="0.000303"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.516594" elapsed="0.000344"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.516970" 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-08-10T02:10:11.065560" elapsed="0.451532"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-08-10T02:10:11.049726" elapsed="0.467411"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.517798" 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-08-10T02:10:11.517396" elapsed="0.000429"/>
</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-08-10T02:10:11.559358" 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-08-10T02:10:11.558964" elapsed="0.000425"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.560122" 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-08-10T02:10:11.559883" elapsed="0.000315">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-08-10T02:10:11.560291" 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-08-10T02:10:11.559554" elapsed="0.000761"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.560907" 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-08-10T02:10:11.560524" elapsed="0.000410"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.561230" 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-08-10T02:10:11.561419" 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-08-10T02:10:11.561094" elapsed="0.000352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.561848" 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-08-10T02:10:11.561606" 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-08-10T02:10:11.562845" 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-08-10T02:10:11.562591" elapsed="0.000298"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.563306" 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-08-10T02:10:11.563046" elapsed="0.000290"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.564049" 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-08-10T02:10:11.563703" elapsed="0.000372"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-08-10T02:10:11.565116" 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-08-10T02:10:11.564661" elapsed="0.000482"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-08-10T02:10:11.565231" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:10:11.565410" 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-08-10T02:10:11.564258" elapsed="0.001177"/>
</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-08-10T02:10:11.565588" elapsed="0.000278"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:3</var>
<status status="PASS" start="2026-08-10T02:10:11.563570" elapsed="0.002338"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-08-10T02:10:11.563402" elapsed="0.002541"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:11.565986" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:11.566141" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:11.562250" elapsed="0.003916"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.561959" elapsed="0.004239"/>
</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-08-10T02:10:11.566390" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.566223" elapsed="0.000223"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.561940" elapsed="0.004527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.567136" 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-08-10T02:10:11.566607" elapsed="0.000557"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.567212" elapsed="0.000027"/>
</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-08-10T02:10:11.558328" elapsed="0.009023"/>
</kw>
<msg time="2026-08-10T02:10:11.567407" 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-08-10T02:10:11.546182" elapsed="0.021273"/>
</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-08-10T02:10:11.579503" 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-08-10T02:10:11.591327" elapsed="0.000042"/>
</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-08-10T02:10:11.606101" 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-08-10T02:10:11.606299" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:11.606490" 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-08-10T02:10:11.606849" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.606707" elapsed="0.000195"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:11.606692" elapsed="0.000233"/>
</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-08-10T02:10:11.607064" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:11.609612" elapsed="0.000027"/>
</kw>
<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-08-10T02:10:11.609789" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:11.606664" elapsed="0.003178"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:11.606565" elapsed="0.003307"/>
</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-08-10T02:10:11.610020" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:11.610100" elapsed="0.000018"/>
</return>
<msg time="2026-08-10T02:10:11.610268" 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-08-10T02:10:11.542043" elapsed="0.068254"/>
</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-08-10T02:10:11.620991" elapsed="0.000435"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.634276" 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-08-10T02:10:11.633885" elapsed="0.000420"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.635106" 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-08-10T02:10:11.634830" elapsed="0.000356">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-08-10T02:10:11.635280" 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-08-10T02:10:11.634491" elapsed="0.000813"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.635865" 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-08-10T02:10:11.635487" elapsed="0.000406"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.636192" 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-08-10T02:10:11.636373" 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-08-10T02:10:11.636052" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.636798" level="INFO">{
  "flow": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.636555" 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-08-10T02:10:11.637242" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.636932" elapsed="0.000366"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.637786" 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-08-10T02:10:11.637495" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.637324" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.636910" elapsed="0.000957"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.638467" 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-08-10T02:10:11.638011" elapsed="0.000483"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.638544" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:10:11.638696" 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-08-10T02:10:11.633243" elapsed="0.005478"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.651874" 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-08-10T02:10:11.651500" elapsed="0.000403"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.652610" 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-08-10T02:10:11.652405" 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-08-10T02:10:11.652763" 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-08-10T02:10:11.652061" elapsed="0.000726"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.653360" 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-08-10T02:10:11.652946" elapsed="0.000443"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.653684" 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-08-10T02:10:11.653808" 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-08-10T02:10:11.653552" elapsed="0.000280"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.654224" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.653984" elapsed="0.000284"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-08-10T02:10:11.654637" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.654350" elapsed="0.000344"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.655148" 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-08-10T02:10:11.654862" elapsed="0.000312"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.654718" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.654315" elapsed="0.000915"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.655806" 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-08-10T02:10:11.655390" elapsed="0.000442"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.655880" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:11.656030" 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-08-10T02:10:11.650858" elapsed="0.005196"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.668876" 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-08-10T02:10:11.668504" elapsed="0.000400"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.669631" 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-08-10T02:10:11.669424" 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-08-10T02:10:11.669786" 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-08-10T02:10:11.669076" elapsed="0.000734"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.670366" 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-08-10T02:10:11.669969" elapsed="0.000425"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:11.670685" 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-08-10T02:10:11.670843" 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-08-10T02:10:11.670552" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.671262" 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-08-10T02:10:11.671022" 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-08-10T02:10:11.671685" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.671398" elapsed="0.000344"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.672198" 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-08-10T02:10:11.671910" elapsed="0.000314"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.671766" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.671379" elapsed="0.000901"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.673075" 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-08-10T02:10:11.672441" elapsed="0.000700"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.673191" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:11.673362" 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-08-10T02:10:11.667945" elapsed="0.005445"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.673796" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-10T02:10:11.673553" elapsed="0.000268"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.674357" 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-08-10T02:10:11.673977" elapsed="0.000407"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:11.675014" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.674781" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.674766" elapsed="0.000328"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.675603" 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-08-10T02:10:11.675233" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.676566" 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-08-10T02:10:11.675782" 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-08-10T02:10:11.676749" elapsed="0.000201"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-08-10T02:10:11.674735" 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-08-10T02:10:11.677436" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.677181" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.677166" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.678175" 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-08-10T02:10:11.677827" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.678974" 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-08-10T02:10:11.678373" 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-08-10T02:10:11.679155" elapsed="0.000198"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-08-10T02:10:11.677136" 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-08-10T02:10:11.679840" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.679604" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.679589" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.680598" 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-08-10T02:10:11.680227" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.681428" 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-08-10T02:10:11.680778" 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-08-10T02:10:11.681611" elapsed="0.000181"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-08-10T02:10:11.679559" 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-08-10T02:10:11.682238" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.682004" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.681989" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.682995" 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-08-10T02:10:11.682648" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.683788" 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-08-10T02:10:11.683173" 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-08-10T02:10:11.683969" elapsed="0.000182"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-08-10T02:10:11.681961" 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-08-10T02:10:11.684620" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.684384" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.684367" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.685388" 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-08-10T02:10:11.685004" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.686169" 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-08-10T02:10:11.685569" 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-08-10T02:10:11.686370" elapsed="0.000183"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-08-10T02:10:11.684320" 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-08-10T02:10:11.687000" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.686767" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.686752" elapsed="0.000488"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.687748" 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-08-10T02:10:11.687401" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.688537" 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-08-10T02:10:11.687925" 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-08-10T02:10:11.688717" elapsed="0.000179"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-08-10T02:10:11.686723" 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-08-10T02:10:11.689389" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.689108" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.689093" elapsed="0.000541"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.690121" 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-08-10T02:10:11.689777" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.690911" 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-08-10T02:10:11.690298" 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-08-10T02:10:11.691126" elapsed="0.000182"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-08-10T02:10:11.689064" 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-08-10T02:10:11.691779" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.691543" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.691528" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.692540" 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-08-10T02:10:11.692166" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.693471" 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-08-10T02:10:11.692720" elapsed="0.000780"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.693654" elapsed="0.000181"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-08-10T02:10:11.691500" 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-08-10T02:10:11.694280" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.694047" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.694033" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.695040" 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-08-10T02:10:11.694694" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.695836" 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-08-10T02:10:11.695221" 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-08-10T02:10:11.696017" elapsed="0.000179"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-08-10T02:10:11.694004" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.696661" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.696427" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.696412" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.697448" 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-08-10T02:10:11.697047" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.698230" 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-08-10T02:10:11.697630" 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-08-10T02:10:11.698431" elapsed="0.000183"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-08-10T02:10:11.696382" 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-08-10T02:10:11.699059" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.698825" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.698811" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.699809" 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-08-10T02:10:11.699462" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.700601" 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-08-10T02:10:11.699987" 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-08-10T02:10:11.700781" elapsed="0.000179"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-08-10T02:10:11.698782" 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-08-10T02:10:11.701437" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.701171" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.701156" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.702174" 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-08-10T02:10:11.701826" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.703014" 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-08-10T02:10:11.702408" 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-08-10T02:10:11.703195" elapsed="0.000200"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-08-10T02:10:11.701127" 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-08-10T02:10:11.703842" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.703608" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.703594" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.704598" 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-08-10T02:10:11.704229" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.705422" 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-08-10T02:10:11.704778" 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-08-10T02:10:11.705605" elapsed="0.000180"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-08-10T02:10:11.703565" 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-08-10T02:10:11.706230" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.705998" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.705983" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.706985" 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-08-10T02:10:11.706636" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.707784" 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-08-10T02:10:11.707162" 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-08-10T02:10:11.707963" elapsed="0.000179"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-08-10T02:10:11.705954" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.708610" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.708375" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.708357" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.709488" 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-08-10T02:10:11.708993" elapsed="0.000522"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.710266" 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-08-10T02:10:11.709667" 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-08-10T02:10:11.710468" elapsed="0.000180"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-08-10T02:10:11.708310" 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-08-10T02:10:11.711094" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.710860" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.710845" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.711844" 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-08-10T02:10:11.711498" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.712638" 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-08-10T02:10:11.712022" 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-08-10T02:10:11.712818" elapsed="0.000181"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-08-10T02:10:11.710816" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.713807" elapsed="0.000453"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.713213" elapsed="0.001180"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.713198" elapsed="0.001254"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.715679" 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-08-10T02:10:11.714778" elapsed="0.000963"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.717627" 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-08-10T02:10:11.716090" elapsed="0.001602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.718037" elapsed="0.000450"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-08-10T02:10:11.713170" elapsed="0.005401"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.719537" elapsed="0.000411"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.718974" elapsed="0.001057"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.718941" elapsed="0.001145"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.721215" 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-08-10T02:10:11.720436" elapsed="0.000838"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.723055" 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-08-10T02:10:11.721673" elapsed="0.001446"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.723498" elapsed="0.000404"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-08-10T02:10:11.718875" elapsed="0.005110"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.724947" elapsed="0.000440"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.724419" elapsed="0.001103"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.724384" elapsed="0.001193"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.726585" 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-08-10T02:10:11.725897" elapsed="0.000715"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.727385" 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-08-10T02:10:11.726766" 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-08-10T02:10:11.727569" elapsed="0.000183"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-08-10T02:10:11.724283" elapsed="0.003506"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.728203" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.727969" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.727953" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.728956" 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-08-10T02:10:11.728608" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.732604" 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-08-10T02:10:11.729134" elapsed="0.004093"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.733405" elapsed="0.000227"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-08-10T02:10:11.727924" elapsed="0.005747"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.734087" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.733850" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.733835" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.734848" 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-08-10T02:10:11.734495" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.735646" 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-08-10T02:10:11.735028" 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-08-10T02:10:11.735882" elapsed="0.000183"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-08-10T02:10:11.733805" 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-08-10T02:10:11.736536" elapsed="0.000304"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.736282" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.736268" elapsed="0.000635"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.737411" 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-08-10T02:10:11.737042" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.738202" 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-08-10T02:10:11.737604" 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-08-10T02:10:11.738402" elapsed="0.000183"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-08-10T02:10:11.736238" 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-08-10T02:10:11.739032" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.738800" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.738785" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.739780" 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-08-10T02:10:11.739433" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.740569" 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-08-10T02:10:11.739958" 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-08-10T02:10:11.740751" elapsed="0.000181"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-08-10T02:10:11.738756" 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-08-10T02:10:11.741396" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.741145" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.741131" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.742159" 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-08-10T02:10:11.741811" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.742953" 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-08-10T02:10:11.742356" 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-08-10T02:10:11.743134" elapsed="0.000179"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-08-10T02:10:11.741102" 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-08-10T02:10:11.743778" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.743545" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.743531" elapsed="0.000488"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.744526" 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-08-10T02:10:11.744160" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.745294" 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-08-10T02:10:11.744703" 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-08-10T02:10:11.745494" elapsed="0.000196"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-08-10T02:10:11.743502" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.746134" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.745902" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.745887" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.746883" 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-08-10T02:10:11.746537" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.747721" 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-08-10T02:10:11.747096" 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-08-10T02:10:11.747904" elapsed="0.000181"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-08-10T02:10:11.745857" 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-08-10T02:10:11.748555" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.748298" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.748283" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.749283" 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-08-10T02:10:11.748939" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.750139" 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-08-10T02:10:11.749483" 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-08-10T02:10:11.750324" elapsed="0.000212"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-08-10T02:10:11.748254" 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-08-10T02:10:11.750992" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.750754" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.750739" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.751770" 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-08-10T02:10:11.751402" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.752592" 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-08-10T02:10:11.751953" 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-08-10T02:10:11.752778" elapsed="0.000185"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-08-10T02:10:11.750710" 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-08-10T02:10:11.753559" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.753183" elapsed="0.000624"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.753168" elapsed="0.000664"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.754359" 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-08-10T02:10:11.753977" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.755162" 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-08-10T02:10:11.754550" 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-08-10T02:10:11.755366" elapsed="0.000186"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-08-10T02:10:11.753138" 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-08-10T02:10:11.756008" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.755770" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.755755" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.756779" 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-08-10T02:10:11.756419" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.757594" 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-08-10T02:10:11.756960" 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-08-10T02:10:11.757818" elapsed="0.000187"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-08-10T02:10:11.755726" 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-08-10T02:10:11.758472" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.758218" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.758203" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.759243" 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-08-10T02:10:11.758893" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.760044" 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-08-10T02:10:11.759442" 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-08-10T02:10:11.760224" elapsed="0.000201"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-08-10T02:10:11.758174" 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-08-10T02:10:11.760871" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.760638" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.760623" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.761622" 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-08-10T02:10:11.761254" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.762442" 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-08-10T02:10:11.761820" 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-08-10T02:10:11.762624" elapsed="0.000180"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-08-10T02:10:11.760595" 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-08-10T02:10:11.763250" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.763018" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.763003" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.764004" 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-08-10T02:10:11.763658" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.764797" 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-08-10T02:10:11.764181" 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-08-10T02:10:11.764977" elapsed="0.000180"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-08-10T02:10:11.762975" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.765623" elapsed="0.000225"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.765389" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.765374" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.766435" 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-08-10T02:10:11.766056" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.767233" 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-08-10T02:10:11.766622" 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-08-10T02:10:11.767436" elapsed="0.000185"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-08-10T02:10:11.765326" 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-08-10T02:10:11.768075" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.767838" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.767822" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.768845" 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-08-10T02:10:11.768486" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.769663" 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-08-10T02:10:11.769026" 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-08-10T02:10:11.769864" elapsed="0.000187"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-08-10T02:10:11.767792" 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-08-10T02:10:11.770686" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.770441" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.770294" elapsed="0.000646"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.771462" 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-08-10T02:10:11.771083" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.772255" 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-08-10T02:10:11.771641" 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-08-10T02:10:11.772460" elapsed="0.000188"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-08-10T02:10:11.770263" elapsed="0.002423"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.773103" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.772866" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.772851" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.773924" 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-08-10T02:10:11.773514" elapsed="0.000438"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.774738" 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-08-10T02:10:11.774105" 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-08-10T02:10:11.774922" elapsed="0.000185"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-08-10T02:10:11.772821" 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-08-10T02:10:11.775580" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.775323" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.775309" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.776322" 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-08-10T02:10:11.775968" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.777133" 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-08-10T02:10:11.776521" 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-08-10T02:10:11.777315" elapsed="0.000205"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-08-10T02:10:11.775280" 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-08-10T02:10:11.777995" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.777735" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.777720" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.778763" 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-08-10T02:10:11.778403" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.779573" 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-08-10T02:10:11.778944" 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-08-10T02:10:11.779758" elapsed="0.000184"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-08-10T02:10:11.777691" 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-08-10T02:10:11.780419" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.780163" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.780146" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.781168" 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-08-10T02:10:11.780810" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.782064" 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-08-10T02:10:11.781370" elapsed="0.000757"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.782284" elapsed="0.000216"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-08-10T02:10:11.780116" 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-08-10T02:10:11.782948" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.782714" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.782699" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.783701" 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-08-10T02:10:11.783336" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.784497" 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-08-10T02:10:11.783879" 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-08-10T02:10:11.784677" elapsed="0.000181"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-08-10T02:10:11.782670" 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-08-10T02:10:11.785304" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.785071" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.785057" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.786176" 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-08-10T02:10:11.785717" elapsed="0.000488"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.787009" 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-08-10T02:10:11.786384" 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-08-10T02:10:11.787195" elapsed="0.000207"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-08-10T02:10:11.785028" 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-08-10T02:10:11.788721" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.788468" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.787609" elapsed="0.001366"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.789505" 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-08-10T02:10:11.789118" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.790370" 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-08-10T02:10:11.789689" 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-08-10T02:10:11.790601" elapsed="0.000257"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-08-10T02:10:11.787579" elapsed="0.003332"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.791513" elapsed="0.000256"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.791160" elapsed="0.000662"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.791139" elapsed="0.000716"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.792561" 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-08-10T02:10:11.792050" elapsed="0.000548"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.793664" 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-08-10T02:10:11.792808" elapsed="0.000896"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.793939" elapsed="0.000257"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-08-10T02:10:11.791098" elapsed="0.003151"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.794845" elapsed="0.000252"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.794520" elapsed="0.000629"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.794500" elapsed="0.000682"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.795897" 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-08-10T02:10:11.795404" elapsed="0.000577"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.797075" 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-08-10T02:10:11.796200" elapsed="0.000915"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.797364" elapsed="0.000260"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-08-10T02:10:11.794459" elapsed="0.003218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.798421" elapsed="0.000268"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.798032" elapsed="0.000713"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.797996" elapsed="0.000783"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.799380" 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-08-10T02:10:11.798980" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.800163" 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-08-10T02:10:11.799562" 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-08-10T02:10:11.800367" elapsed="0.000186"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-08-10T02:10:11.797869" elapsed="0.002721"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.801001" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.800767" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.800752" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.801757" 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-08-10T02:10:11.801404" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.802584" 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-08-10T02:10:11.801964" 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-08-10T02:10:11.802766" elapsed="0.000181"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-08-10T02:10:11.800723" 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-08-10T02:10:11.803412" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.803161" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.803147" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.804146" 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-08-10T02:10:11.803798" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.804949" 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-08-10T02:10:11.804325" 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-08-10T02:10:11.805130" elapsed="0.000181"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-08-10T02:10:11.803118" 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-08-10T02:10:11.805779" elapsed="0.000213"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.805545" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.805530" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.806564" 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-08-10T02:10:11.806197" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.807361" 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-08-10T02:10:11.806744" 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-08-10T02:10:11.807544" elapsed="0.000184"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-08-10T02:10:11.805501" 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-08-10T02:10:11.808368" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.808069" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.807932" elapsed="0.000696"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.809126" 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-08-10T02:10:11.808771" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.809927" 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-08-10T02:10:11.809308" 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-08-10T02:10:11.810128" elapsed="0.000185"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-08-10T02:10:11.807902" 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-08-10T02:10:11.810784" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.810550" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.810535" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.811537" 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-08-10T02:10:11.811168" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.812314" 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-08-10T02:10:11.811716" 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-08-10T02:10:11.812516" elapsed="0.000182"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-08-10T02:10:11.810505" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.813148" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.812915" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.812900" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.813898" 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-08-10T02:10:11.813552" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.814735" 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-08-10T02:10:11.814105" 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-08-10T02:10:11.814919" elapsed="0.000181"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-08-10T02:10:11.812870" 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-08-10T02:10:11.815572" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.815317" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.815302" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.816301" 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-08-10T02:10:11.815955" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.817097" 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-08-10T02:10:11.816501" 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-08-10T02:10:11.817275" elapsed="0.000202"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-08-10T02:10:11.815273" 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-08-10T02:10:11.817922" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.817690" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.817675" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.818700" 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-08-10T02:10:11.818334" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.819492" 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-08-10T02:10:11.818878" 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-08-10T02:10:11.819721" elapsed="0.000184"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-08-10T02:10:11.817647" 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-08-10T02:10:11.820376" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.820121" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.820106" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.821116" 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-08-10T02:10:11.820767" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.821923" 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-08-10T02:10:11.821294" 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-08-10T02:10:11.822132" elapsed="0.000185"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-08-10T02:10:11.820077" 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-08-10T02:10:11.822788" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.822553" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.822538" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.823541" 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-08-10T02:10:11.823172" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.824320" 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-08-10T02:10:11.823720" 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-08-10T02:10:11.824522" elapsed="0.000181"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-08-10T02:10:11.822509" 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-08-10T02:10:11.825303" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.825060" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.824906" elapsed="0.000664"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.826061" 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-08-10T02:10:11.825711" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.826890" 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-08-10T02:10:11.826263" 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-08-10T02:10:11.827073" elapsed="0.000182"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-08-10T02:10:11.824877" elapsed="0.002416"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.827728" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.827494" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.827479" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.828490" 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-08-10T02:10:11.828119" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.829273" 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-08-10T02:10:11.828672" 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-08-10T02:10:11.829475" elapsed="0.000184"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-08-10T02:10:11.827449" 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-08-10T02:10:11.830170" elapsed="0.000228"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.829878" elapsed="0.000561"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.829864" elapsed="0.000600"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.830979" 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-08-10T02:10:11.830613" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.831842" 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-08-10T02:10:11.831200" 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-08-10T02:10:11.832028" elapsed="0.000185"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-08-10T02:10:11.829834" elapsed="0.002417"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.832696" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.832459" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.832443" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.833467" 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-08-10T02:10:11.833090" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.834364" 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-08-10T02:10:11.833654" 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-08-10T02:10:11.834554" elapsed="0.000186"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-08-10T02:10:11.832412" 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-08-10T02:10:11.835188" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.834955" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.834940" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.835939" 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-08-10T02:10:11.835593" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.836739" 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-08-10T02:10:11.836116" 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-08-10T02:10:11.836917" elapsed="0.000180"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-08-10T02:10:11.834912" 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-08-10T02:10:11.837564" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.837312" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.837296" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.838327" 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-08-10T02:10:11.837945" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.839122" 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-08-10T02:10:11.838523" 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-08-10T02:10:11.839301" elapsed="0.000204"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-08-10T02:10:11.837267" 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-08-10T02:10:11.839957" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.839724" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.839708" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.840711" 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-08-10T02:10:11.840360" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.841506" 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-08-10T02:10:11.840888" 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-08-10T02:10:11.841686" elapsed="0.000182"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-08-10T02:10:11.839678" 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-08-10T02:10:11.842474" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.842213" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.842069" elapsed="0.000693"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.843258" 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-08-10T02:10:11.842907" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.844097" 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-08-10T02:10:11.843457" 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-08-10T02:10:11.844281" elapsed="0.000219"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-08-10T02:10:11.842039" 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-08-10T02:10:11.845135" elapsed="0.000281"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.844809" elapsed="0.000663"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.844789" elapsed="0.000719"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.846190" 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-08-10T02:10:11.845705" elapsed="0.000603"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.847353" 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-08-10T02:10:11.846576" elapsed="0.000810"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.847543" elapsed="0.000187"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-08-10T02:10:11.844748" elapsed="0.003020"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.848186" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.847949" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.847934" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.848960" 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-08-10T02:10:11.848601" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.849785" 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-08-10T02:10:11.849143" 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-08-10T02:10:11.849969" elapsed="0.000186"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-08-10T02:10:11.847904" 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-08-10T02:10:11.850665" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.850424" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.850409" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.851456" 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-08-10T02:10:11.851059" elapsed="0.000424"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.852253" 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-08-10T02:10:11.851637" 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-08-10T02:10:11.852456" elapsed="0.000187"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-08-10T02:10:11.850376" 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-08-10T02:10:11.853105" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.852867" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.852851" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.853887" 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-08-10T02:10:11.853524" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.854866" 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-08-10T02:10:11.854069" elapsed="0.000839"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.855124" elapsed="0.000289"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-08-10T02:10:11.852820" elapsed="0.002701"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.856116" elapsed="0.000289"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.855781" elapsed="0.000680"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.855760" elapsed="0.000734"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.857199" 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-08-10T02:10:11.856697" elapsed="0.000539"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.862224" 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-08-10T02:10:11.857480" elapsed="0.004787"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.862614" elapsed="0.000282"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-08-10T02:10:11.855717" elapsed="0.007235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.863543" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.863205" elapsed="0.000561"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.863184" elapsed="0.000606"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.864282" 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-08-10T02:10:11.863931" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.865086" 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-08-10T02:10:11.864483" 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-08-10T02:10:11.865268" elapsed="0.000202"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-08-10T02:10:11.863142" 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-08-10T02:10:11.866043" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.865800" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.865673" elapsed="0.000616"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.866907" 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-08-10T02:10:11.866520" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.867737" 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-08-10T02:10:11.867094" 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-08-10T02:10:11.867924" elapsed="0.000189"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-08-10T02:10:11.865643" 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-08-10T02:10:11.868603" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.868355" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.868320" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.869377" 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-08-10T02:10:11.868996" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.870172" 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-08-10T02:10:11.869560" 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-08-10T02:10:11.870406" elapsed="0.000197"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-08-10T02:10:11.868289" elapsed="0.002353"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.871065" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.870825" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.870810" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.872002" 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-08-10T02:10:11.871490" elapsed="0.000549"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.873136" 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-08-10T02:10:11.872254" elapsed="0.000971"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.873478" elapsed="0.000265"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-08-10T02:10:11.870781" elapsed="0.003016"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.874430" elapsed="0.000262"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.874053" elapsed="0.000692"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.874032" elapsed="0.000748"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.875499" 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-08-10T02:10:11.874981" elapsed="0.000554"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.876610" 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-08-10T02:10:11.875748" elapsed="0.000901"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.876863" elapsed="0.000255"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-08-10T02:10:11.873990" elapsed="0.003180"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.877777" elapsed="0.000253"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.877445" elapsed="0.000638"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.877424" elapsed="0.000693"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.878888" 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-08-10T02:10:11.878314" elapsed="0.000611"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.879850" 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-08-10T02:10:11.879138" 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-08-10T02:10:11.880030" elapsed="0.000179"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-08-10T02:10:11.877381" elapsed="0.002865"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.880687" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.880449" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.880434" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.881436" 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-08-10T02:10:11.881070" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.882212" 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-08-10T02:10:11.881614" 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-08-10T02:10:11.882410" elapsed="0.000209"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-08-10T02:10:11.880403" 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-08-10T02:10:11.883075" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.882838" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.882823" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.883842" 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-08-10T02:10:11.883484" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.884653" 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-08-10T02:10:11.884022" 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-08-10T02:10:11.884837" elapsed="0.000183"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-08-10T02:10:11.882793" 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-08-10T02:10:11.885621" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.885371" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.885224" elapsed="0.000649"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.886396" 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-08-10T02:10:11.886019" elapsed="0.000440"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.887285" 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-08-10T02:10:11.886662" 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-08-10T02:10:11.887493" elapsed="0.000189"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-08-10T02:10:11.885194" 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-08-10T02:10:11.888138" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.887900" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.887885" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.888913" 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-08-10T02:10:11.888552" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.889730" 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-08-10T02:10:11.889095" 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-08-10T02:10:11.889916" elapsed="0.000185"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-08-10T02:10:11.887854" 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-08-10T02:10:11.890597" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.890320" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.890304" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.891355" 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-08-10T02:10:11.890989" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.892133" 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-08-10T02:10:11.891535" 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-08-10T02:10:11.892312" elapsed="0.000202"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-08-10T02:10:11.890275" 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-08-10T02:10:11.892960" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.892727" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.892713" elapsed="0.000487"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.893708" 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-08-10T02:10:11.893361" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.894500" 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-08-10T02:10:11.893884" 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-08-10T02:10:11.894764" elapsed="0.000191"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-08-10T02:10:11.892684" 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-08-10T02:10:11.895432" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.895173" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.895158" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.896169" 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-08-10T02:10:11.895821" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.896964" 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-08-10T02:10:11.896364" 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-08-10T02:10:11.897144" elapsed="0.000180"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-08-10T02:10:11.895129" 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-08-10T02:10:11.897825" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.897556" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.897541" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.898657" 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-08-10T02:10:11.898214" elapsed="0.000477"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.899502" 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-08-10T02:10:11.898853" 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-08-10T02:10:11.899688" elapsed="0.000186"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-08-10T02:10:11.897512" 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-08-10T02:10:11.900355" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.900097" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.900082" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.901108" 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-08-10T02:10:11.900749" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.901920" 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-08-10T02:10:11.901288" 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-08-10T02:10:11.902102" elapsed="0.000183"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-08-10T02:10:11.900052" 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-08-10T02:10:11.902933" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.902679" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.902511" elapsed="0.000676"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.903814" 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-08-10T02:10:11.903330" elapsed="0.000521"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.904946" 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-08-10T02:10:11.904063" elapsed="0.000923"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.905202" elapsed="0.000295"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-08-10T02:10:11.902481" 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-08-10T02:10:11.906144" elapsed="0.000290"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.905810" elapsed="0.000680"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.905788" elapsed="0.000735"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.907237" 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-08-10T02:10:11.906744" elapsed="0.000529"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.908378" 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-08-10T02:10:11.907514" elapsed="0.000904"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.908630" elapsed="0.000251"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-08-10T02:10:11.905746" elapsed="0.003185"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.909531" elapsed="0.000252"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.909181" elapsed="0.000654"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.909160" elapsed="0.000708"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.910572" 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-08-10T02:10:11.910064" elapsed="0.000546"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.911670" 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-08-10T02:10:11.910874" 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-08-10T02:10:11.911891" elapsed="0.000184"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-08-10T02:10:11.909119" elapsed="0.002993"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.912545" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.912292" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.912276" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.913275" 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-08-10T02:10:11.912929" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.914149" 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-08-10T02:10:11.913476" 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-08-10T02:10:11.914356" elapsed="0.000190"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-08-10T02:10:11.912247" elapsed="0.002337"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.915063" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.914799" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.914780" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.915845" 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-08-10T02:10:11.915483" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.916659" 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-08-10T02:10:11.916026" 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-08-10T02:10:11.916844" elapsed="0.000184"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-08-10T02:10:11.914746" 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-08-10T02:10:11.917504" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.917246" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.917230" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.918257" 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-08-10T02:10:11.917898" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.919109" 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-08-10T02:10:11.918457" 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-08-10T02:10:11.919290" elapsed="0.000204"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-08-10T02:10:11.917201" 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-08-10T02:10:11.919945" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.919713" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.919697" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.920695" 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-08-10T02:10:11.920330" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.921492" 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-08-10T02:10:11.920873" 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-08-10T02:10:11.921673" elapsed="0.000180"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-08-10T02:10:11.919667" 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-08-10T02:10:11.922437" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.922178" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.922052" elapsed="0.000635"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.923201" 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-08-10T02:10:11.922850" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.924049" 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-08-10T02:10:11.923444" 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-08-10T02:10:11.924231" elapsed="0.000204"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-08-10T02:10:11.922023" 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-08-10T02:10:11.924889" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.924657" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.924642" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.925642" 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-08-10T02:10:11.925273" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.926439" 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-08-10T02:10:11.925820" 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-08-10T02:10:11.926619" elapsed="0.000217"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-08-10T02:10:11.924612" 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-08-10T02:10:11.927285" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.927052" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.927037" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.928033" 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-08-10T02:10:11.927689" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.928828" 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-08-10T02:10:11.928210" 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-08-10T02:10:11.929008" elapsed="0.000180"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-08-10T02:10:11.927008" 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-08-10T02:10:11.929655" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.929423" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.929408" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.930418" 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-08-10T02:10:11.930039" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.931235" 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-08-10T02:10:11.930600" 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-08-10T02:10:11.931439" elapsed="0.000185"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-08-10T02:10:11.929377" 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-08-10T02:10:11.932081" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.931845" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.931830" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.932851" 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-08-10T02:10:11.932491" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.933659" 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-08-10T02:10:11.933029" 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-08-10T02:10:11.933842" elapsed="0.000182"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-08-10T02:10:11.931799" 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-08-10T02:10:11.934509" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.934243" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.934226" elapsed="0.000597"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.935326" 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-08-10T02:10:11.934973" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.936130" 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-08-10T02:10:11.935526" 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-08-10T02:10:11.936309" elapsed="0.000202"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-08-10T02:10:11.934196" elapsed="0.002353"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-08-10T02:10:11.936958" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.936725" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.936710" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.937713" 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-08-10T02:10:11.937360" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.938507" 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-08-10T02:10:11.937891" 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-08-10T02:10:11.938687" elapsed="0.000198"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-08-10T02:10:11.936681" 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-08-10T02:10:11.939470" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.939211" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.939086" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.940212" 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-08-10T02:10:11.939858" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.941008" 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-08-10T02:10:11.940409" 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-08-10T02:10:11.941188" elapsed="0.000200"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-08-10T02:10:11.939057" 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-08-10T02:10:11.941837" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.941601" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.941586" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.942591" 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-08-10T02:10:11.942222" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.943422" 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-08-10T02:10:11.942769" 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-08-10T02:10:11.943604" elapsed="0.000182"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-08-10T02:10:11.941557" elapsed="0.002267"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-08-10T02:10:11.674446" elapsed="0.269408"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.945129" 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-08-10T02:10:11.944007" elapsed="0.001149"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:11.945218" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:10:11.945406" 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-08-10T02:10:11.620045" elapsed="0.325388"/>
</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-08-10T02:10:11.947816" 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-08-10T02:10:11.946565" elapsed="0.001330">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-08-10T02:10:11.947992" 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-08-10T02:10:11.946195" elapsed="0.001822"/>
</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-08-10T02:10:11.948355" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.948089" elapsed="0.000325"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.948929" 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-08-10T02:10:11.948635" elapsed="0.000321"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.948438" elapsed="0.000553"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.948071" elapsed="0.000942"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.951398" 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-08-10T02:10:11.949164" elapsed="0.002262"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:11.951478" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:11.951634" 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-08-10T02:10:11.945841" elapsed="0.005817"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.953203" 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-08-10T02:10:11.952941" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.953657" 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-08-10T02:10:11.953418" elapsed="0.000936"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.954752" 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-08-10T02:10:11.954508" elapsed="0.000287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.955196" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.954959" elapsed="0.000279"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:11.956055" 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-08-10T02:10:11.955860" elapsed="0.000221"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-08-10T02:10:11.956421" 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-08-10T02:10:11.956230" elapsed="0.000216"/>
</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-08-10T02:10:11.956595" elapsed="0.000191"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:11.957181" 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-08-10T02:10:11.956938" elapsed="0.000285"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-08-10T02:10:11.957265" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:11.957439" 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-08-10T02:10:11.955457" elapsed="0.002008"/>
</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-08-10T02:10:11.993139" level="INFO">POST Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.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-08-10T02:10:11.993551" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:10:11.993805" 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-08-10T02:10:11.959858" elapsed="0.034007"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.957706" elapsed="0.036268"/>
</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-08-10T02:10:11.994427" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:11.994036" elapsed="0.000545"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.957517" elapsed="0.037113"/>
</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-08-10T02:10:11.999746" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:11.996591" elapsed="0.003215"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.996254" elapsed="0.003601"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.996229" elapsed="0.003661"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:12.003365" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:12.000267" elapsed="0.003163"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:11.999965" elapsed="0.003522"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:11.999943" elapsed="0.003585"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:12.004145" 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-08-10T02:10:12.003756" elapsed="0.000416"/>
</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-08-10T02:10:12.004507" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:12.004240" elapsed="0.000324"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:12.005057" 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-08-10T02:10:12.004759" elapsed="0.000324"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:12.004587" elapsed="0.000532"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:12.004223" elapsed="0.000917"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:12.005687" 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-08-10T02:10:12.005308" elapsed="0.000406"/>
</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-08-10T02:10:12.006026" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:12.005783" elapsed="0.000299"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:12.006598" 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-08-10T02:10:12.006277" elapsed="0.000348"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:12.006105" elapsed="0.000555"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:12.005765" 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-08-10T02:10:12.006831" elapsed="0.000344"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:10:12.007659" 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-08-10T02:10:12.007366" 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-08-10T02:10:12.007838" elapsed="0.002185"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-08-10T02:10:11.995583" elapsed="0.014503"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:12.010266" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:12.010157" elapsed="0.000158"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:12.010139" elapsed="0.000215"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:10:12.012771" 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-08-10T02:10:12.010502" elapsed="0.002296"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:10:12.012846" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:10:12.013006" 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-08-10T02:10:11.951991" elapsed="0.061039"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:12.013139" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:12.013294" 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-08-10T02:10:11.531199" elapsed="0.482121"/>
</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-08-10T02:10:12.013687" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:12.013445" elapsed="0.000310"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:12.013428" elapsed="0.000350"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:10:12.013811" 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-08-10T02:10:11.528674" elapsed="0.485260"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-08-10T02:10:11.517233" elapsed="0.496746"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:10:10.581354" elapsed="1.432663"/>
</for>
<doc>Add 100 flows to group type 2 in every switch.</doc>
<status status="PASS" start="2026-08-10T02:10:10.580938" elapsed="1.433206"/>
</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-08-10T02:10:12.017247" 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-08-10T02:10:12.017003" elapsed="0.000299"/>
</kw>
<kw name="Start Mininet Single Controller" owner="MininetKeywords">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:12.032264" 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-08-10T02:10:12.031909" 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-08-10T02:10:12.035045" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:12.034700" elapsed="0.000419"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:12.034676" elapsed="0.000470"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:12.035598" 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-08-10T02:10:12.035720" 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-08-10T02:10:12.035303" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:12.036319" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:10:12.035901" elapsed="0.000487"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:12.036943" 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-08-10T02:10:12.036554" elapsed="0.000420"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:12.037978" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:12.038057" 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-08-10T02:10:12.037682" 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-08-10T02:10:12.038244" elapsed="0.000383"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:12.039554" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:12.365237" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:10:07 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:12.039167" elapsed="0.326423"/>
</kw>
<msg time="2026-08-10T02:10:12.365683" 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-08-10T02:10:12.038797" elapsed="0.326979"/>
</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-08-10T02:10:12.037220" elapsed="0.328675"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:12.366673" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:10:13.509478" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:13.509868" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:13.509971" 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-08-10T02:10:12.366149" elapsed="1.143879"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:13.510563" elapsed="0.000615"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:13.512397" 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-08-10T02:10:13.511713" elapsed="0.000809"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:13.513035" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:13.512728" elapsed="0.000417"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:13.512645" elapsed="0.000551"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:13.513644" elapsed="0.000068"/>
</return>
<status status="PASS" start="2026-08-10T02:10:13.513314" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:13.513280" elapsed="0.000562"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:13.513917" 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-08-10T02:10:13.520078" elapsed="0.000682"/>
</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-08-10T02:10:13.520925" elapsed="0.000170"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:13.521240" elapsed="0.000116"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:10:13.514670" elapsed="0.006741"/>
</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-08-10T02:10:12.034132" elapsed="1.487371"/>
</kw>
<msg time="2026-08-10T02:10:13.521563" 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-08-10T02:10:12.033532" elapsed="1.488086"/>
</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-08-10T02:10:12.033006" elapsed="1.488692"/>
</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-08-10T02:10:13.523804" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:13.523506" elapsed="0.000354"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:13.523488" elapsed="0.000396"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:13.524172" 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-08-10T02:10:13.524273" 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-08-10T02:10:13.524033" elapsed="0.000266"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:13.524843" 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.177" 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-08-10T02:10:13.524466" elapsed="0.000492"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:13.525510" 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-08-10T02:10:13.525115" elapsed="0.000425"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:13.526452" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:13.526531" 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-08-10T02:10:13.526148" 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-08-10T02:10:13.526710" elapsed="0.000315"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:13.527906" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:13.854746" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:10:12 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:13.527567" elapsed="0.327314"/>
</kw>
<msg time="2026-08-10T02:10:13.854961" 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-08-10T02:10:13.527192" elapsed="0.327847"/>
</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-08-10T02:10:13.525755" elapsed="0.329383"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:13.855580" 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-08-10T02:10:13.888568" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:10:13.888812" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:13.888909" 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-08-10T02:10:13.855360" elapsed="0.033598"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:13.889319" elapsed="0.000562"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:13.890969" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:13.890309" elapsed="0.000752"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:13.891537" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:13.891221" elapsed="0.000422"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:13.891175" elapsed="0.000518"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:13.892042" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:10:13.891810" elapsed="0.000361"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:13.891777" elapsed="0.000446"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:13.892296" 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-08-10T02:10:13.898456" elapsed="0.000461"/>
</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-08-10T02:10:13.899083" elapsed="0.000156"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:13.899404" 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-08-10T02:10:13.893026" elapsed="0.006529"/>
</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-08-10T02:10:13.522961" elapsed="0.376686"/>
</kw>
<msg time="2026-08-10T02:10:13.899702" 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-08-10T02:10:13.522395" elapsed="0.377358"/>
</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-08-10T02:10:13.521874" elapsed="0.377961"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-08-10T02:10:12.032609" elapsed="1.867343"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:13.904893" 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-08-10T02:10:13.904526" elapsed="0.000393"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:13.906697" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:13.906774" 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-08-10T02:10:13.906417" elapsed="0.000381"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:10:13.906954" elapsed="0.000314"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:13.908119" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:14.236710" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:31 UTC 2026

  System load:  0.03               Processes:             109
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:10:13 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:13.907809" elapsed="0.329007"/>
</kw>
<msg time="2026-08-10T02:10:14.236886" 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-08-10T02:10:13.907453" elapsed="0.329505"/>
</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-08-10T02:10:13.905917" elapsed="0.331133"/>
</kw>
<msg time="2026-08-10T02:10:14.237098" 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-08-10T02:10:13.905497" elapsed="0.331646"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:10:13.905099" elapsed="0.332115"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-08-10T02:10:14.237254" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:10:14.237440" 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-08-10T02:10:13.904019" elapsed="0.333446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:14.238718" 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-08-10T02:10:14.238296" elapsed="0.000465"/>
</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-08-10T02:10:14.240936" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:14.238833" elapsed="0.002158"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:14.238814" elapsed="0.002202"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:14.241488" level="INFO">Start mininet --topo linear,3 to 10.30.170.209</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:14.241181" elapsed="0.000352"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:10:14.244258" level="INFO">sudo mn --controller 'remote,ip=10.30.170.209,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-08-10T02:10:14.241686" elapsed="0.002628"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:10:14.574940" 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-08-10T02:10:14.244489" elapsed="0.330587"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:14.575748" 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-08-10T02:10:14.575417" elapsed="0.000377"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:10:14.577509" 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-08-10T02:10:14.575956" elapsed="0.001611"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:10:14.599541" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s3
        Controller "tcp:10.30.170.209:6633"
        Controller "ptcp:6656"
        fail_mode: secure
        Port s3-eth2
            Interface s3-eth2
        Port s3
            Interface s3
                type: internal
        Port s3-eth1
            Interface s3-eth1
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "ptcp:6654"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
        Port s1-eth1
            Interface s1-eth1
    Bridge s2
        Controller "tcp:10.30.170.209:6633"
        Controller "ptcp:6655"
        fail_mode: secure
        Port s2-eth3
            Interface s2-eth3
        Port s2-eth1
            Interface s2-eth1
        Port s2
            Interface s2
                type: internal
        Port s2-eth2
            Interface s2-eth2
    ovs_version: "2.17.11"
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-08-10T02:10:14.577726" elapsed="0.022016"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-08-10T02:10:14.599804" elapsed="0.000061"/>
</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-08-10T02:10:12.017641" elapsed="2.582371"/>
</kw>
<arg>${SWITCHES}</arg>
<doc>Start mininet linear topology with 3 nodes.</doc>
<status status="PASS" start="2026-08-10T02:10:12.016440" elapsed="2.583645"/>
</kw>
<doc>Start Mininet Linear with 3 switches.</doc>
<status status="PASS" start="2026-08-10T02:10:12.015901" elapsed="2.584315"/>
</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-08-10T02:10:14.607285" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:14.607559" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:10:14.607690" 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-08-10T02:10:14.602225" elapsed="0.005492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:14.610417" 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-08-10T02:10:14.607931" elapsed="0.002534"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:14.616319" 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-08-10T02:10:14.613057" elapsed="0.003407">'{"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-08-10T02:10:14.616746" elapsed="0.000031"/>
</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-08-10T02:10:14.617037" elapsed="0.000029"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:14.617306" elapsed="0.000047"/>
</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-08-10T02:10:14.617641" elapsed="0.000033"/>
</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-08-10T02:10:14.617927" elapsed="0.000028"/>
</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-08-10T02:10:14.618311" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:14.618057" elapsed="0.000365"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:14.618030" elapsed="0.000427"/>
</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-08-10T02:10:14.618787" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:14.618533" elapsed="0.000330"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:14.618511" elapsed="0.000384"/>
</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-08-10T02:10:14.619198" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:14.618967" elapsed="0.000306"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:14.618945" elapsed="0.000359"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:14.612846" elapsed="0.006555">'{"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-08-10T02:10:14.610537" elapsed="0.008949">'{"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-08-10T02:10:14.601878" elapsed="0.017749">'{"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-08-10T02:10:15.629371" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:15.629741" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:10:15.629914" 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-08-10T02:10:15.621993" elapsed="0.007961"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:15.634278" 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-08-10T02:10:15.630279" elapsed="0.004096"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:15.641894" 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-08-10T02:10:15.638324" elapsed="0.003656">'{"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-08-10T02:10:15.642187" 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-08-10T02:10:15.642422" elapsed="0.000023"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:15.642622" 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-08-10T02:10:15.642812" 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-08-10T02:10:15.643002" elapsed="0.000020"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:15.643270" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:15.643096" elapsed="0.000227"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:15.643076" elapsed="0.000292"/>
</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-08-10T02:10:15.643597" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:15.643424" elapsed="0.000225"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:15.643409" elapsed="0.000263"/>
</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-08-10T02:10:15.643888" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:15.643723" elapsed="0.000218"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:15.643708" elapsed="0.000254"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:15.638057" elapsed="0.005956">'{"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-08-10T02:10:15.634460" elapsed="0.009614">'{"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-08-10T02:10:15.620945" elapsed="0.023231">'{"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-08-10T02:10:16.653563" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:16.653839" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:10:16.653989" 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-08-10T02:10:16.646483" elapsed="0.007542"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:16.657703" 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-08-10T02:10:16.654372" elapsed="0.003485"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:16.664838" 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-08-10T02:10:16.661458" elapsed="0.003483">'{"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-08-10T02:10:16.665258" 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-08-10T02:10:16.665559" elapsed="0.000032"/>
</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-08-10T02:10:16.665828" 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-08-10T02:10:16.666017" elapsed="0.000019"/>
</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-08-10T02:10:16.666209" elapsed="0.000020"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:16.666497" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:16.666303" elapsed="0.000248"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:16.666283" elapsed="0.000294"/>
</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-08-10T02:10:16.666798" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:16.666632" elapsed="0.000220"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:16.666617" elapsed="0.000258"/>
</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-08-10T02:10:16.667092" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:16.666926" elapsed="0.000220"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:16.666911" elapsed="0.000257"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:16.661193" elapsed="0.006024">'{"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-08-10T02:10:16.657940" elapsed="0.009338">'{"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-08-10T02:10:16.645534" elapsed="0.021866">'{"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-08-10T02:10:17.676676" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:17.676943" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:10:17.677094" 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-08-10T02:10:17.669694" elapsed="0.007438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:17.681150" 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-08-10T02:10:17.677474" elapsed="0.003749"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:17.688240" 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-08-10T02:10:17.684848" elapsed="0.003520">'{"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-08-10T02:10:17.688671" 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-08-10T02:10:17.689027" 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-08-10T02:10:17.689294" elapsed="0.000028"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:17.689587" elapsed="0.000028"/>
</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-08-10T02:10:17.689856" elapsed="0.000028"/>
</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-08-10T02:10:17.690231" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:17.689986" elapsed="0.000321"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:17.689959" elapsed="0.000408"/>
</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-08-10T02:10:17.690688" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:17.690446" elapsed="0.000318"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:17.690424" elapsed="0.000371"/>
</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-08-10T02:10:17.691099" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:17.690866" elapsed="0.000307"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:17.690845" elapsed="0.000360"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:17.684598" elapsed="0.006675">'{"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-08-10T02:10:17.681301" elapsed="0.010081">'{"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-08-10T02:10:17.668743" elapsed="0.022786">'{"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-08-10T02:10:18.700809" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:18.701481" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '2802'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow: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"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:18.701660" 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-08-10T02:10:18.693792" elapsed="0.007906"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:18.705715" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"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-08-10T02:10:18.702012" elapsed="0.003879"/>
</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-08-10T02:10:18.709509" elapsed="0.003931"/>
</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-08-10T02:10:18.713710" elapsed="0.003677"/>
</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-08-10T02:10:18.717582" elapsed="0.002659"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:18.723126" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</msg>
<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="FAIL" start="2026-08-10T02:10:18.720452" elapsed="0.002772">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</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-08-10T02:10:18.723457" 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-08-10T02:10:18.723683" 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-08-10T02:10:18.723957" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:18.723781" elapsed="0.000230"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:18.723760" elapsed="0.000276"/>
</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-08-10T02:10:18.724255" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:18.724089" elapsed="0.000266"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:18.724074" elapsed="0.000305"/>
</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-08-10T02:10:18.724600" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:18.724433" elapsed="0.000221"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:18.724417" elapsed="0.000259"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:18.709244" elapsed="0.015483">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:18.705971" elapsed="0.018834">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-08-10T02:10:18.692854" elapsed="0.032075">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:19.735764" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:19.736483" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '2802'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow: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"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:19.736686" 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-08-10T02:10:19.727499" elapsed="0.009225"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:19.740883" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"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-08-10T02:10:19.737061" elapsed="0.003917"/>
</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-08-10T02:10:19.744600" elapsed="0.003784"/>
</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-08-10T02:10:19.748655" elapsed="0.003276"/>
</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-08-10T02:10:19.752121" elapsed="0.002665"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:19.757674" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</msg>
<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="FAIL" start="2026-08-10T02:10:19.754980" elapsed="0.002877">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</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-08-10T02:10:19.758073" 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-08-10T02:10:19.758274" elapsed="0.000053"/>
</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-08-10T02:10:19.758604" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:19.758425" elapsed="0.000234"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:19.758403" elapsed="0.000282"/>
</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-08-10T02:10:19.758905" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:19.758738" elapsed="0.000221"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:19.758724" elapsed="0.000258"/>
</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-08-10T02:10:19.759199" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:19.759033" elapsed="0.000219"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:19.759018" elapsed="0.000256"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:19.744357" elapsed="0.014989">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:19.741060" elapsed="0.018371">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-08-10T02:10:19.726520" elapsed="0.033072">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:20.770592" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:20.771289" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '2802'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow: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"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:20.771577" 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-08-10T02:10:20.762014" elapsed="0.009602"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:20.775957" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"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-08-10T02:10:20.771957" elapsed="0.004096"/>
</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-08-10T02:10:20.779709" elapsed="0.003392"/>
</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-08-10T02:10:20.783295" elapsed="0.002925"/>
</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-08-10T02:10:20.786430" elapsed="0.002713"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:20.792067" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</msg>
<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="FAIL" start="2026-08-10T02:10:20.789355" elapsed="0.002821">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</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-08-10T02:10:20.792443" 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-08-10T02:10:20.792646" elapsed="0.000020"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:20.792956" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:20.792759" elapsed="0.000255"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:20.792724" elapsed="0.000318"/>
</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-08-10T02:10:20.793265" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:20.793098" elapsed="0.000221"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:20.793083" elapsed="0.000277"/>
</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-08-10T02:10:20.793580" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:20.793413" elapsed="0.000221"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:20.793398" elapsed="0.000258"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:20.779451" elapsed="0.014261">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:20.776138" elapsed="0.017693">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-08-10T02:10:20.761012" elapsed="0.032976">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"source-tp":"openflow:1:2"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:21.804054" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:21.805189" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:21.805520" 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-08-10T02:10:21.796420" elapsed="0.009165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:21.812212" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:21.806128" elapsed="0.006153"/>
</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-08-10T02:10:21.814817" elapsed="0.002692"/>
</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-08-10T02:10:21.817702" elapsed="0.002669"/>
</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-08-10T02:10:21.820669" elapsed="0.002714"/>
</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-08-10T02:10:21.823573" elapsed="0.002593"/>
</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-08-10T02:10:21.826373" elapsed="0.002628"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:21.829663" 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-08-10T02:10:21.829193" elapsed="0.000497"/>
</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-08-10T02:10:21.830011" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:21.829770" elapsed="0.000297"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:21.829749" elapsed="0.000344"/>
</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-08-10T02:10:21.830399" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:21.830147" elapsed="0.000309"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:21.830132" elapsed="0.000347"/>
</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-08-10T02:10:21.830761" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:21.830531" elapsed="0.000285"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:21.830516" elapsed="0.000323"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:10:21.814641" elapsed="0.016221"/>
</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-08-10T02:10:21.832790" elapsed="0.002806"/>
</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-08-10T02:10:21.835786" elapsed="0.002636"/>
</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-08-10T02:10:21.838612" elapsed="0.002636"/>
</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-08-10T02:10:21.841455" elapsed="0.002669"/>
</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-08-10T02:10:21.844312" elapsed="0.002650"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:21.847616" 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-08-10T02:10:21.847166" elapsed="0.000477"/>
</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-08-10T02:10:21.847948" elapsed="0.002648"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:21.847712" elapsed="0.002925"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:21.847694" elapsed="0.002968"/>
</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-08-10T02:10:21.850959" elapsed="0.002717"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:21.850717" elapsed="0.003000"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:21.850701" elapsed="0.003040"/>
</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-08-10T02:10:21.854039" elapsed="0.002657"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:21.853797" elapsed="0.002939"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:21.853781" elapsed="0.002979"/>
</if>
<var name="${switch}">2</var>
<status status="PASS" start="2026-08-10T02:10:21.832626" elapsed="0.024157"/>
</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-08-10T02:10:21.857153" elapsed="0.002691"/>
</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-08-10T02:10:21.860033" elapsed="0.002648"/>
</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-08-10T02:10:21.862871" elapsed="0.002672"/>
</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-08-10T02:10:21.865732" elapsed="0.002684"/>
</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-08-10T02:10:21.868605" elapsed="0.002633"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:21.871882" 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-08-10T02:10:21.871445" elapsed="0.000464"/>
</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-08-10T02:10:21.872213" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:21.871978" elapsed="0.000342"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:21.871960" 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-08-10T02:10:21.872658" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:21.872422" elapsed="0.000292"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:21.872406" elapsed="0.000330"/>
</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-08-10T02:10:21.873017" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:21.872789" elapsed="0.000282"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:21.872774" elapsed="0.000321"/>
</if>
<var name="${switch}">3</var>
<status status="PASS" start="2026-08-10T02:10:21.856990" elapsed="0.016127"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:10:21.812358" elapsed="0.060789"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="PASS" start="2026-08-10T02:10:21.795432" elapsed="0.077775"/>
</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-08-10T02:10:14.601058" elapsed="7.272198"/>
</kw>
<doc>Check Linear Topology.</doc>
<status status="PASS" start="2026-08-10T02:10:14.600477" elapsed="7.272927"/>
</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-08-10T02:10:21.916175" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:21.919101" level="INFO">GET Response : url=http://10.30.170.209: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":37082,"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":"13","active-flows":101,"packets-matched":"3"},"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":52000000}},"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":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":52000000}},"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":38000000}},"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":52000000}},"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":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":46000000}},"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":39000000}},"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":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":46000000}},"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":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":46000000}},"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":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"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":46000000}},"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":[{"o... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:10:21.919761" 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-08-10T02:10:21.875036" elapsed="0.044772"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:21.924223" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":37082,"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":"13","active-flows":101,"packets-matched":"3"},"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":52000000}},"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":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":52000000}},"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":38000000}},"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":52000000}},"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":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":46000000}},"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":39000000}},"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":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":46000000}},"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":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":46000000}},"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":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":52000000}},"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":33000000}},"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":33000000}},"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":"3","byte-count":"225","duration":{"second":3,"nanosecond":33000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":52000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":46000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":46000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":46000000}},"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":52000000}},"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":46000000}},"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":38000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":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":52000000}},"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":46000000}},"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":52000000}},"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":46000000}},"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":38000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":38000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":46000000}},"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":38000000}},"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":38000000}},"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":33000000}},"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":38000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":46000000}},"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":38000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":38000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"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":38000000}},"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":38000000}},"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":38000000}},"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":38000000}},"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":38000000}},"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":52000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":38000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":46000000}},"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":46000000}},"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":39000000}},"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":46000000}},"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":39000000}},"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":46000000}},"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":39000000}},"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":46000000}},"flags":""}]},{"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-08-10T02:10:21.613Z"},"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:c0:d9:25:02: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":7,"nanosecond":122000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d6:e3:e1:10:f3:00","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":"8","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":133000000},"bytes":{"transmitted":"671","received":"671"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:70:47:d6:9c:9e","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":"8","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":133000000},"bytes":{"transmitted":"671","received":"586"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":4,"nanosecond":34000000},"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":4,"nanosecond":33000000},"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":4,"nanosecond":33000000},"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":6,"nanosecond":871000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":4,"nanosecond":33000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":553000000},"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":6,"nanosecond":553000000},"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":6,"nanosecond":55000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":543000000},"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":6,"nanosecond":46000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":6,"nanosecond":46000000},"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":6,"nanosecond":46000000},"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":6,"nanosecond":46000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":6,"nanosecond":46000000},"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":3,"nanosecond":543000000},"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":6,"nanosecond":46000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":45000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":42000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":42000000},"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":6,"nanosecond":42000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":42000000},"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":6,"nanosecond":42000000},"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":6,"nanosecond":42000000},"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":6,"nanosecond":41000000},"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":6,"nanosecond":41000000},"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":3,"nanosecond":542000000},"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":5,"nanosecond":555000000},"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":5,"nanosecond":555000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":555000000},"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":5,"nanosecond":555000000},"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":5,"nanosecond":553000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":553000000},"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":5,"nanosecond":553000000},"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":5,"nanosecond":553000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":552000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":552000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":54000000},"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":5,"nanosecond":51000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":49000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":35000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":3,"nanosecond":536000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:21.679Z"}},{"id":"openflow:1","flow-node-inventory:port-number":37074,"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":"13","active-flows":101,"packets-matched":"3"},"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":71000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":41000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":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":3,"nanosecond":71000000}},"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":40000000}},"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":40000000}},"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":41000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":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":3,"nanosecond":71000000}},"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":40000000}},"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":40000000}},"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":41000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":41000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":41000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":"3","byte-count":"225","duration":{"second":3,"nanosecond":41000000}},"flags":"SEND_FLOW_REM"},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"flags":""}]},{"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-08-10T02:10:21.623Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:0c:9d:31:4a:a7","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":"8","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":142000000},"bytes":{"transmitted":"671","received":"586"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:db:75:2c:3f:45","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":7,"nanosecond":138000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a2:44:ce:79:68:eb","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":7,"nanosecond":142000000},"bytes":{"transmitted":"671","received":"671"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":6,"nanosecond":879000000},"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":6,"nanosecond":878000000},"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":6,"nanosecond":878000000},"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":6,"nanosecond":878000000},"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":4,"nanosecond":41000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":878000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":878000000},"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":6,"nanosecond":878000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":877000000},"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":6,"nanosecond":877000000},"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":6,"nanosecond":877000000},"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":6,"nanosecond":877000000},"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":6,"nanosecond":877000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":561000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":561000000},"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":6,"nanosecond":560000000},"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":6,"nanosecond":558000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":558000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":558000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":60000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":59000000},"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":6,"nanosecond":59000000},"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":6,"nanosecond":59000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":59000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":59000000},"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":6,"nanosecond":58000000},"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":6,"nanosecond":58000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":58000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":58000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":57000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":57000000},"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":6,"nanosecond":57000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":57000000},"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":6,"nanosecond":57000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":52000000},"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":6,"nanosecond":52000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":52000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":51000000},"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":6,"nanosecond":51000000},"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":6,"nanosecond":51000000},"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":6,"nanosecond":51000000},"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":6,"nanosecond":51000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":59000000},"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":5,"nanosecond":59000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":557000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":3,"nanosecond":550000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:21.684Z"}},{"id":"openflow:2","flow-node-inventory:port-number":37088,"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":"19","active-flows":101,"packets-matched":"3"},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":"3","byte-count":"210","duration":{"second":3,"nanosecond":13000000}},"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":3,"nanosecond":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":33000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":29000000}},"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":34000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":40000000}},"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":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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":34000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":40000000}},"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":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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":29000000}},"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":33000000}},"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":40000000}},"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":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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":34000000}},"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":34000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":29000000}},"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":34000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"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":29000000}},"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":29000000}},"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":34000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":34000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":29000000}},"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":34000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":34000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":34000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":34000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":40000000}},"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":29000000}},"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":29000000}},"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":34000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":34000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"flags":""}]},{"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-08-10T02:10:21.623Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:f6:7e:6e:31:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"8","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":117000000},"bytes":{"transmitted":"671","received":"671"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:26:96:e2:a9:46","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":7,"nanosecond":106000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:da:5c:4a:47:8e","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":"8","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":117000000},"bytes":{"transmitted":"671","received":"671"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"3e:a0:f7:c4:e7:45","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":"8","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":117000000},"bytes":{"transmitted":"671","received":"586"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":6,"nanosecond":871000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":4,"nanosecond":33000000},"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":3,"nanosecond":552000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":869000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":56000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":56000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":55000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":50000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":36000000},"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":4,"nanosecond":36000000},"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":4,"nanosecond":36000000},"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":4,"nanosecond":36000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":3,"nanosecond":540000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:21.674Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:21.920093" elapsed="0.012099"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:10:21.935647" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-08-10T02:10:21.935738" 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-08-10T02:10:21.932407" elapsed="0.003357"/>
</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-08-10T02:10:21.935982" elapsed="0.000332"/>
</kw>
<arg>${all_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-08-10T02:10:21.874708" elapsed="0.061693"/>
</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-08-10T02:10:21.874048" elapsed="0.062403"/>
</kw>
<doc>Check Groups after mininet starts.</doc>
<status status="PASS" start="2026-08-10T02:10:21.873610" elapsed="0.062962"/>
</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-08-10T02:10:22.001391" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:22.003566" level="INFO">GET Response : url=http://10.30.170.209: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":37082,"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":"13","active-flows":101,"packets-matched":"3"},"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":52000000}},"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":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":52000000}},"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":38000000}},"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":52000000}},"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":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":46000000}},"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":39000000}},"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":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":46000000}},"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":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":46000000}},"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":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"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":46000000}},"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":[{"o... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:10:22.004039" 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-08-10T02:10:21.937895" elapsed="0.066205"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.009883" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":37082,"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":"13","active-flows":101,"packets-matched":"3"},"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":52000000}},"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":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":52000000}},"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":38000000}},"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":52000000}},"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":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":46000000}},"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":39000000}},"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":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":46000000}},"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":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":46000000}},"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":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":52000000}},"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":33000000}},"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":33000000}},"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":"3","byte-count":"225","duration":{"second":3,"nanosecond":33000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":52000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":46000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":46000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":46000000}},"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":52000000}},"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":46000000}},"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":38000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":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":52000000}},"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":46000000}},"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":52000000}},"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":46000000}},"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":38000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":38000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":46000000}},"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":38000000}},"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":38000000}},"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":33000000}},"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":38000000}},"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":46000000}},"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":38000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":52000000}},"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":46000000}},"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":38000000}},"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":38000000}},"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":33000000}},"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":33000000}},"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":38000000}},"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":38000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":38000000}},"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":38000000}},"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":38000000}},"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":38000000}},"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":38000000}},"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":38000000}},"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":52000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":38000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":46000000}},"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":46000000}},"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":39000000}},"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":46000000}},"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":39000000}},"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":46000000}},"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":39000000}},"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":46000000}},"flags":""}]},{"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-08-10T02:10:21.613Z"},"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:c0:d9:25:02: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":7,"nanosecond":122000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d6:e3:e1:10:f3:00","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":"8","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":133000000},"bytes":{"transmitted":"671","received":"671"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:70:47:d6:9c:9e","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":"8","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":133000000},"bytes":{"transmitted":"671","received":"586"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":4,"nanosecond":34000000},"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":4,"nanosecond":33000000},"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":4,"nanosecond":33000000},"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":6,"nanosecond":871000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":4,"nanosecond":33000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":553000000},"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":6,"nanosecond":553000000},"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":6,"nanosecond":55000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":544000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":544000000},"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":3,"nanosecond":543000000},"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":6,"nanosecond":46000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":6,"nanosecond":46000000},"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":6,"nanosecond":46000000},"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":6,"nanosecond":46000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":543000000},"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":6,"nanosecond":46000000},"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":3,"nanosecond":543000000},"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":6,"nanosecond":46000000},"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":3,"nanosecond":543000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":45000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":45000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":45000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":44000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":6,"nanosecond":43000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":42000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":42000000},"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":6,"nanosecond":42000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":3,"nanosecond":542000000},"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":6,"nanosecond":42000000},"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":6,"nanosecond":42000000},"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":6,"nanosecond":42000000},"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":6,"nanosecond":41000000},"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":6,"nanosecond":41000000},"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":3,"nanosecond":542000000},"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":5,"nanosecond":555000000},"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":5,"nanosecond":555000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":555000000},"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":5,"nanosecond":555000000},"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":5,"nanosecond":553000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":553000000},"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":5,"nanosecond":553000000},"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":5,"nanosecond":553000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":552000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":552000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":54000000},"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":5,"nanosecond":51000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":50000000},"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":5,"nanosecond":49000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":3,"nanosecond":536000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":5,"nanosecond":48000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":35000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":3,"nanosecond":536000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:21.679Z"}},{"id":"openflow:1","flow-node-inventory:port-number":37074,"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":"13","active-flows":101,"packets-matched":"3"},"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":71000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":41000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":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":3,"nanosecond":71000000}},"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":40000000}},"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":40000000}},"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":41000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":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":3,"nanosecond":71000000}},"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":40000000}},"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":40000000}},"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":41000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":41000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":71000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":41000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":71000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":"3","byte-count":"225","duration":{"second":3,"nanosecond":41000000}},"flags":"SEND_FLOW_REM"},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"flags":""}]},{"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-08-10T02:10:21.623Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:0c:9d:31:4a:a7","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":"8","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":142000000},"bytes":{"transmitted":"671","received":"586"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:db:75:2c:3f:45","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":7,"nanosecond":138000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a2:44:ce:79:68:eb","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":7,"nanosecond":142000000},"bytes":{"transmitted":"671","received":"671"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":6,"nanosecond":879000000},"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":6,"nanosecond":878000000},"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":6,"nanosecond":878000000},"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":6,"nanosecond":878000000},"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":4,"nanosecond":41000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":878000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":878000000},"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":6,"nanosecond":878000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":877000000},"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":6,"nanosecond":877000000},"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":6,"nanosecond":877000000},"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":6,"nanosecond":877000000},"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":6,"nanosecond":877000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":561000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":561000000},"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":6,"nanosecond":560000000},"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":6,"nanosecond":558000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":558000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":558000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":558000000},"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":6,"nanosecond":60000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":59000000},"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":6,"nanosecond":59000000},"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":6,"nanosecond":59000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":59000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":59000000},"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":6,"nanosecond":58000000},"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":6,"nanosecond":58000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":58000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":58000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":57000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":57000000},"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":6,"nanosecond":57000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":57000000},"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":6,"nanosecond":57000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":52000000},"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":6,"nanosecond":52000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":52000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":3,"nanosecond":550000000},"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":6,"nanosecond":51000000},"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":6,"nanosecond":51000000},"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":6,"nanosecond":51000000},"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":6,"nanosecond":51000000},"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":6,"nanosecond":51000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":559000000},"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":5,"nanosecond":59000000},"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":5,"nanosecond":59000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":58000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":3,"nanosecond":550000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":5,"nanosecond":57000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":558000000},"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":4,"nanosecond":557000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":3,"nanosecond":550000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"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":4,"nanosecond":41000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:21.684Z"}},{"id":"openflow:2","flow-node-inventory:port-number":37088,"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":"19","active-flows":101,"packets-matched":"3"},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":"3","byte-count":"210","duration":{"second":3,"nanosecond":13000000}},"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":3,"nanosecond":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":33000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":29000000}},"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":34000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":40000000}},"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":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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":34000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":40000000}},"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":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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":29000000}},"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":33000000}},"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":40000000}},"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":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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":34000000}},"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":34000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":29000000}},"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":34000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"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":29000000}},"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":29000000}},"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":34000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":34000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":34000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":29000000}},"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":29000000}},"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":34000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":34000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":34000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":34000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":40000000}},"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":29000000}},"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":29000000}},"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":34000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":34000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":33000000}},"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":34000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"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":40000000}},"flags":""}]},{"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-08-10T02:10:21.623Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:f6:7e:6e:31:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"8","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":117000000},"bytes":{"transmitted":"671","received":"671"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:26:96:e2:a9:46","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":7,"nanosecond":106000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:da:5c:4a:47:8e","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":"8","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":117000000},"bytes":{"transmitted":"671","received":"671"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"3e:a0:f7:c4:e7:45","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":"8","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":7,"nanosecond":117000000},"bytes":{"transmitted":"671","received":"586"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":6,"nanosecond":871000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":4,"nanosecond":33000000},"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":3,"nanosecond":552000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":870000000},"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":6,"nanosecond":869000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":554000000},"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":6,"nanosecond":56000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":56000000},"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":6,"nanosecond":55000000},"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":6,"nanosecond":55000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":55000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":3,"nanosecond":551000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":53000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":52000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":50000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":6,"nanosecond":50000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":48000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":3,"nanosecond":540000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":6,"nanosecond":47000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":552000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":551000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":3,"nanosecond":540000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":5,"nanosecond":51000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":552000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":551000000},"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":4,"nanosecond":36000000},"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":4,"nanosecond":36000000},"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":4,"nanosecond":36000000},"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":4,"nanosecond":36000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":3,"nanosecond":540000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"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":4,"nanosecond":34000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:21.674Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:22.004581" elapsed="0.011655"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.019465" level="INFO">Item found from container 600 times.</msg>
<msg time="2026-08-10T02:10:22.019552" 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-08-10T02:10:22.016449" elapsed="0.003127"/>
</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-08-10T02:10:22.019771" elapsed="0.000316"/>
</kw>
<arg>${all_groups}</arg>
<doc>Check number of groups in the inventory.</doc>
<status status="PASS" start="2026-08-10T02:10:21.937555" elapsed="0.082594"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-08-10T02:10:21.936936" elapsed="0.083317"/>
</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-08-10T02:10:22.021879" elapsed="0.000166"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:22.021554" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:22.021525" elapsed="0.000610"/>
</if>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.022647" 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-08-10T02:10:22.022365" elapsed="0.000309"/>
</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-08-10T02:10:22.023576" elapsed="0.000134"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:22.023300" elapsed="0.000446"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:22.023282" elapsed="0.000488"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.025861" 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-08-10T02:10:22.023907" elapsed="0.002013"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.109720" level="INFO">*** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=3 byte_count=225 flow_count=101
*** s2 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=3 byte_count=210 flow_count=101
*** s3 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=3 byte_count=225 flow_count=101
mininet&gt;</msg>
<msg time="2026-08-10T02:10:22.109828" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=3 byte_count=225 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-08-10T02:10:22.026079" elapsed="0.083777"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:22.109912" elapsed="0.000044"/>
</return>
<msg time="2026-08-10T02:10:22.110085" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=3 byte_count=225 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-08-10T02:10:22.023003" elapsed="0.087110"/>
</kw>
<kw name="Get Regexp Matches" owner="String">
<msg time="2026-08-10T02:10:22.110694" 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-08-10T02:10:22.110279" elapsed="0.000442"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.111270" 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-08-10T02:10:22.110882" elapsed="0.000418"/>
</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-08-10T02:10:22.111569" elapsed="0.000340"/>
</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-08-10T02:10:22.021179" elapsed="0.090791"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-08-10T02:10:22.020572" elapsed="0.091511"/>
</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-08-10T02:10:22.113391" level="INFO">${rule} = OUTPUT -p all --source 10.30.170.209 --destination 10.30.171.177 -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-08-10T02:10:22.113047" elapsed="0.000372"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.113957" level="INFO">${command} = sudo /sbin/iptables -I OUTPUT -p all --source 10.30.170.209 --destination 10.30.171.177 -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-08-10T02:10:22.113587" elapsed="0.000397"/>
</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-08-10T02:10:22.116481" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:22.116174" elapsed="0.000365"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:22.116156" elapsed="0.000406"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.116825" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:22.116964" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:22.116708" elapsed="0.000284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.117546" level="INFO">Attempting to execute command "sudo /sbin/iptables -I OUTPUT -p all --source 10.30.170.209 --destination 10.30.171.177 -j DROP" on remote system "10.30.170.209" 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-08-10T02:10:22.117142" elapsed="0.000451"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.118139" 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-08-10T02:10:22.117750" elapsed="0.000415"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.119053" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:22.119129" 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-08-10T02:10:22.118790" elapsed="0.000363"/>
</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-08-10T02:10:22.119309" elapsed="0.000362"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.120530" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:22.457869" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:47 UTC 2026

  System load:  0.24               Processes:             119
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:09:47 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:22.120195" elapsed="0.337833"/>
</kw>
<msg time="2026-08-10T02:10:22.458112" 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-08-10T02:10:22.119839" elapsed="0.338358"/>
</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-08-10T02:10:22.118398" elapsed="0.339919"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.458887" level="INFO">Executing command 'sudo /sbin/iptables -I OUTPUT -p all --source 10.30.170.209 --destination 10.30.171.177 -j DROP'.</msg>
<msg time="2026-08-10T02:10:22.481253" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:22.481550" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:22.481650" 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-08-10T02:10:22.458606" elapsed="0.023097"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:22.482072" elapsed="0.000510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.483734" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:22.483041" elapsed="0.000788"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:22.484443" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:22.484001" elapsed="0.000560"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:22.483950" elapsed="0.000663"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:22.484901" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-08-10T02:10:22.484734" elapsed="0.000252"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:22.484700" elapsed="0.000320"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:22.485067" 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">
<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-08-10T02:10:22.490083" elapsed="0.000207"/>
</kw>
<msg time="2026-08-10T02:10:22.490389" 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-08-10T02:10:22.489263" elapsed="0.001246"/>
</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-08-10T02:10:22.490782" elapsed="0.000040"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:22.491022" 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-08-10T02:10:22.485569" elapsed="0.005570"/>
</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-08-10T02:10:22.115651" elapsed="0.375613"/>
</kw>
<msg time="2026-08-10T02:10:22.491471" 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-08-10T02:10:22.114731" elapsed="0.376817"/>
</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-08-10T02:10:22.114185" elapsed="0.377478"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.492246" 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-08-10T02:10:22.491877" elapsed="0.000484"/>
</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-08-10T02:10:22.494725" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:22.494434" elapsed="0.000349"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:22.494411" elapsed="0.000396"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.495077" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:22.495178" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:22.494954" elapsed="0.000251"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.495771" level="INFO">Attempting to execute command "sudo /sbin/iptables -L -n" on remote system "10.30.170.209" 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-08-10T02:10:22.495373" elapsed="0.000444"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.496394" 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-08-10T02:10:22.495972" elapsed="0.000449"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.497351" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:22.497433" 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-08-10T02:10:22.497048" elapsed="0.000410"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:10:22.497624" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.498811" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:22.824410" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:47 UTC 2026

  System load:  0.24               Processes:             119
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:22 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:22.498491" elapsed="0.326073"/>
</kw>
<msg time="2026-08-10T02:10:22.824649" 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-08-10T02:10:22.498113" elapsed="0.326616"/>
</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-08-10T02:10:22.496648" elapsed="0.328195"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:22.825426" level="INFO">Executing command 'sudo /sbin/iptables -L -n'.</msg>
<msg time="2026-08-10T02:10:22.848252" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:22.848539" 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-08-10T02:10:22.848643" 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-08-10T02:10:22.825141" elapsed="0.023552"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:22.849091" elapsed="0.000501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.850717" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:22.850046" elapsed="0.000764"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:22.851279" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:22.850980" elapsed="0.000444"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:22.850931" elapsed="0.000545"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:22.851831" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:10:22.851594" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:22.851560" elapsed="0.000567"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:22.852204" 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-08-10T02:10:22.858763" elapsed="0.000145"/>
</kw>
<msg time="2026-08-10T02:10:22.858951" 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-08-10T02:10:22.858111" elapsed="0.000900"/>
</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-08-10T02:10:22.859167" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:22.859326" elapsed="0.000052"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:10:22.852975" elapsed="0.006467"/>
</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-08-10T02:10:22.493876" elapsed="0.365655"/>
</kw>
<msg time="2026-08-10T02:10:22.859592" 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-08-10T02:10:22.493274" elapsed="0.366364"/>
</kw>
<msg time="2026-08-10T02:10:22.859752" 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-08-10T02:10:22.492660" elapsed="0.367118"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.860175" 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.209        10.30.171.177       

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-08-10T02:10:22.859929" elapsed="0.000301"/>
</kw>
<doc>Break and restore controller to mininet connection via iptables.</doc>
<status status="PASS" start="2026-08-10T02:10:22.112754" elapsed="0.747529"/>
</kw>
<doc>Disconnect Mininet.</doc>
<status status="PASS" start="2026-08-10T02:10:22.112323" elapsed="0.748094"/>
</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-08-10T02:10:22.873668" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:22.874156" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:22.874325" 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-08-10T02:10:22.862058" elapsed="0.012313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.877151" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:22.874569" elapsed="0.002650"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:22.884225" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:22.880424" elapsed="0.003965">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:22.880154" elapsed="0.004418">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:22.877279" elapsed="0.007421">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:22.861738" elapsed="0.023158">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:23.895112" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:23.895801" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:23.895984" 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-08-10T02:10:23.887200" elapsed="0.008823"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:23.900475" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:23.896362" elapsed="0.004211"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:23.907824" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:23.903960" elapsed="0.004053">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:23.903715" elapsed="0.004405">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:23.900651" elapsed="0.007564">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:23.886204" elapsed="0.022192">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:24.917382" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:24.918047" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:24.918226" 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-08-10T02:10:24.910432" elapsed="0.007833"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:24.922326" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:24.918611" elapsed="0.003909"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:24.929539" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:24.925881" elapsed="0.003761">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:24.925637" elapsed="0.004108">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:24.922601" elapsed="0.007264">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:24.909486" elapsed="0.020529">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:25.939049" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:25.939734" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:25.940012" 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-08-10T02:10:25.931918" elapsed="0.008137"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:25.944329" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:25.940527" elapsed="0.003925"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:25.954596" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:25.947844" elapsed="0.006890">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:25.947603" elapsed="0.007288">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:25.944536" elapsed="0.010448">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:25.931002" elapsed="0.024128">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:26.964191" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:26.964878" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:26.965060" 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-08-10T02:10:26.957159" elapsed="0.007939"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:26.969190" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:26.965454" elapsed="0.003833"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:26.976418" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:26.972668" elapsed="0.003910">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:26.972424" elapsed="0.004259">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:26.969389" elapsed="0.007383">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:26.956191" elapsed="0.020745">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:27.987654" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:27.993815" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:27.994307" 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-08-10T02:10:27.978837" elapsed="0.015569"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:28.001230" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:27.995039" elapsed="0.006420"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:28.008797" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:28.004884" elapsed="0.004065">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:28.004630" elapsed="0.004493">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:28.001553" elapsed="0.007731">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:27.977933" elapsed="0.031544">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:29.020016" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:29.020804" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:29.021055" 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-08-10T02:10:29.011750" elapsed="0.009344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:29.025807" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:29.021465" elapsed="0.004442"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:29.033174" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:29.029312" elapsed="0.004007">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:29.029060" elapsed="0.004469">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:29.025995" elapsed="0.007666">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:29.010703" elapsed="0.023234">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:30.045283" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:30.046497" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:30.046915" 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-08-10T02:10:30.036466" elapsed="0.010519"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:30.051638" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:30.047589" elapsed="0.004147"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:30.059321" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:30.055476" elapsed="0.004085">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:30.055132" elapsed="0.004573">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:30.051823" elapsed="0.008007">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:30.035187" elapsed="0.024894">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:31.069826" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:31.070595" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:31.070786" 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-08-10T02:10:31.062118" elapsed="0.008708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:31.075059" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:31.071164" elapsed="0.004062"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:31.082041" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:31.078640" elapsed="0.003504">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:31.078397" elapsed="0.003851">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:31.075309" elapsed="0.007073">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:31.061134" elapsed="0.021398">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:32.092282" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:32.093010" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:32.093275" 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-08-10T02:10:32.084631" elapsed="0.008682"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:32.097865" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:32.093674" elapsed="0.004289"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:32.105245" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' 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-08-10T02:10:32.101381" elapsed="0.004027">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:32.101107" elapsed="0.004442">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:10:32.098043" elapsed="0.007599">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:10:32.083629" elapsed="0.022160">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:33.114777" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:33.115056" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:10:33.115206" 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-08-10T02:10:33.107827" elapsed="0.007416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.118958" 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-08-10T02:10:33.115593" elapsed="0.003431"/>
</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-08-10T02:10:33.122409" elapsed="0.003367"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:10:33.122144" elapsed="0.003691"/>
</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-08-10T02:10:33.126202" elapsed="0.002373"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-08-10T02:10:33.125966" elapsed="0.002650"/>
</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-08-10T02:10:33.128863" elapsed="0.002371"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-08-10T02:10:33.128697" elapsed="0.002578"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:10:33.119103" elapsed="0.012202"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="PASS" start="2026-08-10T02:10:33.106870" elapsed="0.024514"/>
</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-08-10T02:10:22.861166" elapsed="10.270268"/>
</kw>
<doc>Check no switches in topology.</doc>
<status status="PASS" start="2026-08-10T02:10:22.860684" elapsed="10.270877"/>
</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-08-10T02:10:33.132976" level="INFO">${rule} = OUTPUT -p all --source 10.30.170.209 --destination 10.30.171.177 -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-08-10T02:10:33.132647" elapsed="0.000357"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.133568" level="INFO">${command} = sudo /sbin/iptables -D OUTPUT -p all --source 10.30.170.209 --destination 10.30.171.177 -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-08-10T02:10:33.133171" elapsed="0.000424"/>
</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-08-10T02:10:33.135804" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:33.135513" elapsed="0.000348"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:33.135491" elapsed="0.000394"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:33.136169" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:33.136271" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:33.136035" elapsed="0.000263"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.136842" level="INFO">Attempting to execute command "sudo /sbin/iptables -D OUTPUT -p all --source 10.30.170.209 --destination 10.30.171.177 -j DROP" on remote system "10.30.170.209" 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-08-10T02:10:33.136468" elapsed="0.000420"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:33.137452" 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-08-10T02:10:33.137043" elapsed="0.000436"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.138567" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:33.138645" 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-08-10T02:10:33.138106" elapsed="0.000563"/>
</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-08-10T02:10:33.138829" elapsed="0.000319"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:33.140081" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:33.518712" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:47 UTC 2026

  System load:  0.24               Processes:             119
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:22 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:33.139761" elapsed="0.379131"/>
</kw>
<msg time="2026-08-10T02:10:33.518985" 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-08-10T02:10:33.139401" elapsed="0.379677"/>
</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-08-10T02:10:33.137706" elapsed="0.381494"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:33.519786" level="INFO">Executing command 'sudo /sbin/iptables -D OUTPUT -p all --source 10.30.170.209 --destination 10.30.171.177 -j DROP'.</msg>
<msg time="2026-08-10T02:10:33.563040" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:33.563291" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:33.563439" 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-08-10T02:10:33.519503" elapsed="0.043991"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:33.563874" elapsed="0.000520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.565541" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:33.564862" elapsed="0.000772"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:33.566190" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:33.565811" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:33.565758" 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-08-10T02:10:33.566753" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:10:33.566513" elapsed="0.000370"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:33.566478" elapsed="0.000457"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:33.567010" 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-08-10T02:10:33.572672" elapsed="0.000145"/>
</kw>
<msg time="2026-08-10T02:10:33.572861" 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-08-10T02:10:33.572054" elapsed="0.000869"/>
</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-08-10T02:10:33.573086" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:33.573243" 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-08-10T02:10:33.567744" elapsed="0.005580"/>
</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-08-10T02:10:33.134946" elapsed="0.438488"/>
</kw>
<msg time="2026-08-10T02:10:33.573487" 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-08-10T02:10:33.134381" elapsed="0.439153"/>
</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-08-10T02:10:33.133828" elapsed="0.439786"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.574034" 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-08-10T02:10:33.573763" elapsed="0.000298"/>
</kw>
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:33.576199" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:33.575912" elapsed="0.000344"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:33.575893" elapsed="0.000386"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:33.576565" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:33.576739" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:33.576445" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.577290" level="INFO">Attempting to execute command "sudo /sbin/iptables -L -n" on remote system "10.30.170.209" 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-08-10T02:10:33.576916" elapsed="0.000436"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:33.578120" 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-08-10T02:10:33.577508" elapsed="0.000639"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.579063" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:33.579140" 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-08-10T02:10:33.578776" 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-08-10T02:10:33.579320" elapsed="0.000334"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:33.580499" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:33.918752" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:47 UTC 2026

  System load:  0.24               Processes:             119
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:33 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:33.580172" elapsed="0.338752"/>
</kw>
<msg time="2026-08-10T02:10:33.919014" 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-08-10T02:10:33.579821" elapsed="0.339283"/>
</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-08-10T02:10:33.578380" elapsed="0.340848"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:33.919806" level="INFO">Executing command 'sudo /sbin/iptables -L -n'.</msg>
<msg time="2026-08-10T02:10:33.942931" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:33.943180" 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-08-10T02:10:33.943280" 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-08-10T02:10:33.919527" elapsed="0.023845"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:33.943744" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.945302" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:33.944690" elapsed="0.000741"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:33.945898" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:33.945602" elapsed="0.000402"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:33.945552" elapsed="0.000505"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:33.946470" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:10:33.946173" elapsed="0.000429"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:33.946140" elapsed="0.000514"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:33.946727" 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-08-10T02:10:33.952277" elapsed="0.000163"/>
</kw>
<msg time="2026-08-10T02:10:33.952482" 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-08-10T02:10:33.951792" elapsed="0.000751"/>
</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-08-10T02:10:33.952700" elapsed="0.000020"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:33.952855" 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-08-10T02:10:33.947455" elapsed="0.005479"/>
</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-08-10T02:10:33.575391" elapsed="0.377632"/>
</kw>
<msg time="2026-08-10T02:10:33.953153" 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-08-10T02:10:33.574810" elapsed="0.378391"/>
</kw>
<msg time="2026-08-10T02:10:33.953316" 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-08-10T02:10:33.574258" elapsed="0.379104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.953762" 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-08-10T02:10:33.953515" elapsed="0.000300"/>
</kw>
<arg>restore</arg>
<doc>Break and restore controller to mininet connection via iptables.</doc>
<status status="PASS" start="2026-08-10T02:10:33.132312" elapsed="0.821560"/>
</kw>
<doc>Connect Mininet.</doc>
<status status="PASS" start="2026-08-10T02:10:33.131881" elapsed="0.822110"/>
</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-08-10T02:10:33.960872" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:33.961077" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:10:33.961195" 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-08-10T02:10:33.955859" elapsed="0.005363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.963737" 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-08-10T02:10:33.961436" elapsed="0.002349"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:33.969555" 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-08-10T02:10:33.966352" elapsed="0.003308">'{"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-08-10T02:10:33.969936" elapsed="0.000030"/>
</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-08-10T02:10:33.970209" elapsed="0.000028"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:33.970530" 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-08-10T02:10:33.970803" elapsed="0.000028"/>
</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-08-10T02:10:33.971106" elapsed="0.000035"/>
</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-08-10T02:10:33.971499" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:33.971240" elapsed="0.000335"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:33.971215" 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-08-10T02:10:33.971915" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:33.971681" elapsed="0.000350"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:33.971660" elapsed="0.000407"/>
</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-08-10T02:10:33.972400" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:33.972142" elapsed="0.000342"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:33.972120" elapsed="0.000404"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:33.966136" elapsed="0.006470">'{"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-08-10T02:10:33.963844" elapsed="0.008866">'{"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-08-10T02:10:33.955535" elapsed="0.017319">'{"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-08-10T02:10:34.983551" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:34.983845" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:10:34.984021" 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-08-10T02:10:34.975473" elapsed="0.008596"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:34.987969" 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-08-10T02:10:34.984449" elapsed="0.003612"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-08-10T02:10:34.995425" 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-08-10T02:10:34.991783" elapsed="0.003753">'{"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-08-10T02:10:34.995818" elapsed="0.000031"/>
</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-08-10T02:10:34.996146" elapsed="0.000031"/>
</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-08-10T02:10:34.996379" 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-08-10T02:10:34.996574" elapsed="0.000019"/>
</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-08-10T02:10:34.996771" elapsed="0.000020"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:34.997041" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:34.996864" elapsed="0.000230"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:34.996844" elapsed="0.000276"/>
</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-08-10T02:10:34.997376" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:34.997188" elapsed="0.000245"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:34.997169" elapsed="0.000287"/>
</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-08-10T02:10:34.997678" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:34.997508" elapsed="0.000223"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:34.997493" elapsed="0.000260"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:10:34.991534" elapsed="0.006268">'{"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-08-10T02:10:34.988163" elapsed="0.009701">'{"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-08-10T02:10:34.974399" elapsed="0.023641">'{"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-08-10T02:10:36.007316" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.008399" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:10:36.008601" 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-08-10T02:10:36.000454" elapsed="0.008186"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:36.012782" 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-08-10T02:10:36.008959" elapsed="0.003998"/>
</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-08-10T02:10:36.016533" elapsed="0.003021"/>
</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-08-10T02:10:36.019748" elapsed="0.002710"/>
</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-08-10T02:10:36.022652" elapsed="0.002698"/>
</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-08-10T02:10:36.025547" elapsed="0.002688"/>
</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-08-10T02:10:36.028446" elapsed="0.002634"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:36.031750" 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-08-10T02:10:36.031274" elapsed="0.000503"/>
</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-08-10T02:10:36.032130" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:36.031856" elapsed="0.000332"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:36.031835" elapsed="0.000379"/>
</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-08-10T02:10:36.032518" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:36.032268" elapsed="0.000305"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:36.032253" elapsed="0.000343"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:36.032876" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:36.032648" elapsed="0.000283"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:36.032633" elapsed="0.000320"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:10:36.016264" elapsed="0.016711"/>
</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-08-10T02:10:36.033362" elapsed="0.002663"/>
</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-08-10T02:10:36.036214" elapsed="0.002648"/>
</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-08-10T02:10:36.039054" elapsed="0.002671"/>
</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-08-10T02:10:36.041914" elapsed="0.002673"/>
</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-08-10T02:10:36.044777" elapsed="0.002753"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:36.048187" 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-08-10T02:10:36.047721" elapsed="0.000493"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-08-10T02:10:36.048538" elapsed="0.002628"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:36.048283" elapsed="0.002924"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:36.048265" elapsed="0.002967"/>
</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-08-10T02:10:36.051548" elapsed="0.002628"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:36.051285" elapsed="0.002932"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:36.051270" elapsed="0.002971"/>
</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-08-10T02:10:36.054559" elapsed="0.002649"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:36.054295" elapsed="0.002954"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:36.054279" elapsed="0.002994"/>
</if>
<var name="${switch}">2</var>
<status status="PASS" start="2026-08-10T02:10:36.033189" elapsed="0.024107"/>
</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-08-10T02:10:36.057687" elapsed="0.002764"/>
</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-08-10T02:10:36.060642" elapsed="0.002630"/>
</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-08-10T02:10:36.063478" elapsed="0.002655"/>
</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-08-10T02:10:36.066321" elapsed="0.002671"/>
</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-08-10T02:10:36.069181" elapsed="0.002654"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:36.072558" 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-08-10T02:10:36.072098" elapsed="0.000487"/>
</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-08-10T02:10:36.072891" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:36.072655" elapsed="0.000293"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:36.072637" elapsed="0.000334"/>
</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-08-10T02:10:36.073256" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:36.073024" elapsed="0.000288"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:36.073009" elapsed="0.000342"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:36.073638" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:36.073406" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:36.073390" elapsed="0.000328"/>
</if>
<var name="${switch}">3</var>
<status status="PASS" start="2026-08-10T02:10:36.057524" elapsed="0.016217"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:10:36.013042" elapsed="0.060727"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="PASS" start="2026-08-10T02:10:35.999441" elapsed="0.074391"/>
</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-08-10T02:10:33.954812" elapsed="2.119069"/>
</kw>
<doc>Check Linear Topology.</doc>
<status status="PASS" start="2026-08-10T02:10:33.954312" elapsed="2.119698"/>
</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-08-10T02:10:36.190182" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.190311" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:10:36.077149" elapsed="0.113360"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:36.290474" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.290610" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:10:36.190958" elapsed="0.099814"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:36.299571" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.299684" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:10:36.291216" elapsed="0.008613"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:10:36.077006" elapsed="0.222919"/>
</iter>
<iter>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:36.309266" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.309506" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:10:36.300632" elapsed="0.009088"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:36.319265" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.319398" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:10:36.310304" elapsed="0.009384"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:36.326045" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.326109" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:10:36.319993" elapsed="0.006200"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-08-10T02:10:36.300256" elapsed="0.025996"/>
</iter>
<iter>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:36.332467" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.332530" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:10:36.326676" elapsed="0.005938"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:36.338694" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.338757" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:10:36.332841" elapsed="0.006000"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:36.344636" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.344699" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:10:36.339075" elapsed="0.005706"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-08-10T02:10:36.326479" elapsed="0.018358"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:10:36.074825" elapsed="0.270057"/>
</for>
<doc>Remove some groups and flows while network is down.</doc>
<status status="PASS" start="2026-08-10T02:10:36.074394" elapsed="0.270688"/>
</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-08-10T02:10:36.394803" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:36.397100" level="INFO">GET Response : url=http://10.30.170.209: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":36460,"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":"17","active-flows":101,"packets-matched":"7"},"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":50000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":59000000}},"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":30000000}},"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":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":0,"nanosecond":50000000}},"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":30000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":50000000}},"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":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":0,"nanosecond":22000000}},"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":50000000}},"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":[{"o... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:10:36.397485" 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-08-10T02:10:36.347884" elapsed="0.049640"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:36.402481" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":36460,"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":"17","active-flows":101,"packets-matched":"7"},"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":50000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":59000000}},"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":30000000}},"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":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":0,"nanosecond":50000000}},"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":30000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":50000000}},"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":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":0,"nanosecond":22000000}},"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":50000000}},"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":22000000}},"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":57000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":50000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":318000000}},"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":4000000}},"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":50000000}},"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":22000000}},"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":50000000}},"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":50000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":7000000}},"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":22000000}},"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":50000000}},"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":22000000}},"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":58000000}},"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":50000000}},"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":18000000}},"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":17,"nanosecond":318000000}},"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":2000000}},"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":"7","byte-count":"535","duration":{"second":0,"nanosecond":22000000}},"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":22000000}},"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":50000000}},"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":22000000}},"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":57000000}},"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":50000000}},"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":18000000}},"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":17,"nanosecond":318000000}},"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":4000000}},"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":21000000}},"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":50000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":21000000}},"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":50000000}},"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":50000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":20000000}},"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":30000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":20000000}},"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":50000000}},"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":30000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":20000000}},"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":22000000}},"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":20000000}},"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":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":0,"nanosecond":20000000}},"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":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":0,"nanosecond":20000000}},"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":22000000}},"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":59000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":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":0,"nanosecond":7000000}},"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":22000000}},"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":7000000}},"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":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":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":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":0,"nanosecond":37000000}},"flags":""}]},{"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-08-10T02:10:35.902Z"},"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:c0:d9:25:02: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":21,"nanosecond":404000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d6:e3:e1:10:f3:00","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":21,"nanosecond":415000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:70:47:d6:9c:9e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":21,"nanosecond":415000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":319000000},"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":318000000},"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":318000000},"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":156000000},"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":155000000},"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":155000000},"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":155000000},"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":318000000},"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":836000000},"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":155000000},"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":829000000},"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":155000000},"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":155000000},"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":829000000},"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":829000000},"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":155000000},"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":155000000},"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":155000000},"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":155000000},"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":155000000},"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":829000000},"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":839000000},"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":829000000},"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":839000000},"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":839000000},"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":839000000},"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":829000000},"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":839000000},"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":829000000},"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":839000000},"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":829000000},"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":829000000},"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":829000000},"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":839000000},"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":839000000},"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":839000000},"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":838000000},"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":838000000},"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":340000000},"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":829000000},"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":829000000},"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":332000000},"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":332000000},"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":332000000},"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":829000000},"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":828000000},"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":331000000},"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":828000000},"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":828000000},"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":828000000},"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":331000000},"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":331000000},"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":331000000},"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":828000000},"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":828000000},"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":828000000},"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":828000000},"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":331000000},"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":828000000},"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":331000000},"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":828000000},"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":827000000},"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":827000000},"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":330000000},"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":827000000},"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":827000000},"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":827000000},"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":330000000},"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":330000000},"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":827000000},"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":330000000},"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":330000000},"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":330000000},"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":330000000},"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":330000000},"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":827000000},"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":330000000},"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":329000000},"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":329000000},"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":329000000},"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":329000000},"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":329000000},"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":827000000},"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":827000000},"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":17,"nanosecond":827000000},"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":329000000},"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":329000000},"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":328000000},"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":328000000},"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":827000000},"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":328000000},"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":328000000},"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":328000000},"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":328000000},"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":328000000},"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":827000000},"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":827000000},"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":20,"nanosecond":327000000},"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":827000000},"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":327000000},"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":327000000},"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":827000000},"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":827000000},"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":827000000},"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":327000000},"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":327000000},"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":327000000},"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":326000000},"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":326000000},"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":827000000},"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":840000000},"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":840000000},"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":821000000},"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":840000000},"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":840000000},"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":838000000},"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":821000000},"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":838000000},"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":838000000},"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":838000000},"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":837000000},"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":837000000},"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":837000000},"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":821000000},"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":837000000},"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":821000000},"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":837000000},"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":821000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":339000000},"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":336000000},"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":821000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":334000000},"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":821000000},"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":333000000},"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":333000000},"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":333000000},"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":821000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":320000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":821000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:35.960Z"}},{"id":"openflow:1","flow-node-inventory:port-number":36446,"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":"17","active-flows":101,"packets-matched":"7"},"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":48000000}},"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":43000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":43000000}},"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":43000000}},"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":48000000}},"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":43000000}},"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":43000000}},"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":48000000}},"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":43000000}},"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":48000000}},"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":43000000}},"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":0,"nanosecond":32000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":25000000}},"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":26000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":48000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":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":0,"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":0,"nanosecond":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":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":0,"nanosecond":32000000}},"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":26000000}},"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":31000000}},"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":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":0,"nanosecond":31000000}},"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":31000000}},"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":31000000}},"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":48000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":32000000}},"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":26000000}},"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":43000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"flags":""}]},{"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-08-10T02:10:35.880Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:0c:9d:31:4a:a7","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":21,"nanosecond":409000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:db:75:2c:3f:45","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":405000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a2:44:ce:79:68:eb","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":21,"nanosecond":409000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":307000000},"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":307000000},"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":307000000},"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":145000000},"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":144000000},"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":144000000},"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":144000000},"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":307000000},"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":816000000},"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":144000000},"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":816000000},"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":144000000},"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":144000000},"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":816000000},"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":816000000},"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":143000000},"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":143000000},"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":143000000},"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":143000000},"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":143000000},"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":816000000},"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":827000000},"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":816000000},"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":827000000},"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":826000000},"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":824000000},"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":816000000},"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":824000000},"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":816000000},"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":824000000},"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":816000000},"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":816000000},"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":816000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":326000000},"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":816000000},"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":816000000},"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":325000000},"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":325000000},"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":325000000},"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":816000000},"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":816000000},"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":325000000},"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":816000000},"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":816000000},"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":816000000},"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":325000000},"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":324000000},"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":324000000},"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":816000000},"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":816000000},"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":816000000},"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":816000000},"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":324000000},"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":816000000},"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":324000000},"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":816000000},"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":816000000},"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":816000000},"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":323000000},"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":816000000},"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":816000000},"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":816000000},"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":323000000},"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":323000000},"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":816000000},"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":323000000},"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":323000000},"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":321000000},"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":321000000},"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":321000000},"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":816000000},"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":321000000},"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":321000000},"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":321000000},"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":319000000},"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":319000000},"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":319000000},"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":816000000},"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":816000000},"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":17,"nanosecond":816000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":816000000},"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":319000000},"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":319000000},"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":318000000},"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":318000000},"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":318000000},"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":816000000},"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":816000000},"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":20,"nanosecond":318000000},"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":816000000},"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":318000000},"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":318000000},"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":816000000},"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":816000000},"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":816000000},"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":317000000},"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":317000000},"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":317000000},"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":317000000},"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":317000000},"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":816000000},"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":825000000},"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":825000000},"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":816000000},"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":825000000},"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":825000000},"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":825000000},"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":816000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":816000000},"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":825000000},"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":816000000},"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":825000000},"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":816000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":325000000},"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":325000000},"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":816000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":816000000},"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":323000000},"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":323000000},"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":323000000},"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":816000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":823000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":816000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:35.950Z"}},{"id":"openflow:2","flow-node-inventory:port-number":36466,"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":"26","active-flows":101,"packets-matched":"10"},"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":62000000}},"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":34000000}},"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":62000000}},"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":29000000}},"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":62000000}},"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":34000000}},"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":34000000}},"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":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":0,"nanosecond":42000000}},"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":42000000}},"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":62000000}},"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":34000000}},"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":62000000}},"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":34000000}},"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":24000000}},"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":42000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":1000000}},"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":42000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":1000000}},"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":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"10","byte-count":"760","duration":{"second":0,"nanosecond":35000000}},"flags":"SEND_FLOW_REM"},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":20000000}},"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":55000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":1000000}},"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":20000000}},"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":42000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":1000000}},"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":20000000}},"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":55000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":21000000}},"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":1000000}},"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":20000000}},"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":62000000}},"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":55000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":21000000}},"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":1000000}},"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":20000000}},"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":34000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":5000000}},"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":1000000}},"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":20000000}},"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":55000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":5000000}},"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":1000000}},"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":5000000}},"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":28000000}},"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":5000000}},"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":26000000}},"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":5000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":5000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":62000000}},"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":1000000}},"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":1000000}},"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":5000000}},"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":5000000}},"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":29000000}},"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":4000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"flags":""}]},{"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-08-10T02:10:35.905Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:f6:7e:6e:31:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":21,"nanosecond":407000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:26:96:e2:a9:46","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":396000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:da:5c:4a:47:8e","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":21,"nanosecond":407000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"3e:a0:f7:c4:e7:45","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":21,"nanosecond":407000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":319000000},"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":319000000},"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":319000000},"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":156000000},"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":155000000},"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":155000000},"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":155000000},"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":318000000},"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":837000000},"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":155000000},"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":836000000},"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":155000000},"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":155000000},"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":836000000},"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":836000000},"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":155000000},"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":155000000},"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":155000000},"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":155000000},"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":154000000},"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":836000000},"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":839000000},"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":836000000},"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":839000000},"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":839000000},"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":839000000},"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":836000000},"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":839000000},"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":836000000},"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":839000000},"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":836000000},"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":836000000},"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":836000000},"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":839000000},"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":839000000},"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":839000000},"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":839000000},"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":839000000},"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":341000000},"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":836000000},"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":836000000},"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":341000000},"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":340000000},"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":340000000},"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":836000000},"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":836000000},"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":340000000},"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":836000000},"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":836000000},"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":836000000},"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":338000000},"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":338000000},"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":337000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":337000000},"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":825000000},"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":337000000},"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":825000000},"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":825000000},"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":825000000},"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":335000000},"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":825000000},"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":825000000},"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":825000000},"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":335000000},"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":335000000},"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":825000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":825000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":825000000},"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":825000000},"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":17,"nanosecond":825000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":825000000},"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":333000000},"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":333000000},"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":333000000},"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":332000000},"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":332000000},"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":825000000},"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":825000000},"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":20,"nanosecond":332000000},"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":825000000},"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":332000000},"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":332000000},"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":825000000},"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":825000000},"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":825000000},"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":332000000},"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":332000000},"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":332000000},"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":332000000},"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":332000000},"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":825000000},"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":837000000},"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":836000000},"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":825000000},"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":836000000},"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":836000000},"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":836000000},"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":825000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":825000000},"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":836000000},"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":825000000},"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":836000000},"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":825000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":336000000},"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":336000000},"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":825000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":825000000},"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":336000000},"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":336000000},"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":336000000},"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":825000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":321000000},"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":321000000},"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":321000000},"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":321000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":825000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:35.962Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:36.397903" elapsed="0.010175"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:10:36.411813" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-08-10T02:10:36.411909" 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-08-10T02:10:36.408452" elapsed="0.003484"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-08-10T02:10:36.412602" 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-08-10T02:10:36.412145" elapsed="0.000562">303 != 300</status>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="FAIL" start="2026-08-10T02:10:36.347392" elapsed="0.065464">303 != 300</status>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:37.458136" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:37.460397" level="INFO">GET Response : url=http://10.30.170.209: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":36460,"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":"17","active-flows":101,"packets-matched":"7"},"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":50000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":59000000}},"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":30000000}},"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":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":0,"nanosecond":50000000}},"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":30000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":50000000}},"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":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":0,"nanosecond":22000000}},"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":50000000}},"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":[{"o... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:10:37.460917" 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-08-10T02:10:37.415136" elapsed="0.045904"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:37.466069" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":36460,"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":"17","active-flows":101,"packets-matched":"7"},"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":50000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":59000000}},"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":30000000}},"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":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":0,"nanosecond":50000000}},"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":30000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":50000000}},"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":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":0,"nanosecond":22000000}},"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":50000000}},"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":22000000}},"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":57000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":50000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":318000000}},"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":4000000}},"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":50000000}},"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":22000000}},"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":50000000}},"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":50000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":7000000}},"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":22000000}},"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":50000000}},"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":22000000}},"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":58000000}},"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":50000000}},"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":18000000}},"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":17,"nanosecond":318000000}},"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":2000000}},"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":"7","byte-count":"535","duration":{"second":0,"nanosecond":22000000}},"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":22000000}},"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":50000000}},"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":22000000}},"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":57000000}},"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":50000000}},"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":18000000}},"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":17,"nanosecond":318000000}},"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":4000000}},"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":21000000}},"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":50000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":21000000}},"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":50000000}},"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":50000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":20000000}},"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":30000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":20000000}},"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":50000000}},"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":30000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":20000000}},"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":22000000}},"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":20000000}},"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":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":0,"nanosecond":20000000}},"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":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":0,"nanosecond":20000000}},"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":22000000}},"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":59000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":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":0,"nanosecond":7000000}},"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":22000000}},"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":7000000}},"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":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":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":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":0,"nanosecond":37000000}},"flags":""}]},{"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-08-10T02:10:35.902Z"},"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:c0:d9:25:02: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":21,"nanosecond":404000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d6:e3:e1:10:f3:00","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":21,"nanosecond":415000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:70:47:d6:9c:9e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":21,"nanosecond":415000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":319000000},"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":318000000},"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":318000000},"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":156000000},"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":155000000},"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":155000000},"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":155000000},"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":318000000},"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":836000000},"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":155000000},"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":829000000},"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":155000000},"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":155000000},"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":829000000},"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":829000000},"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":155000000},"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":155000000},"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":155000000},"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":155000000},"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":155000000},"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":829000000},"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":839000000},"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":829000000},"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":839000000},"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":839000000},"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":839000000},"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":829000000},"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":839000000},"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":829000000},"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":839000000},"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":829000000},"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":829000000},"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":829000000},"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":839000000},"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":839000000},"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":839000000},"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":838000000},"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":838000000},"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":340000000},"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":829000000},"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":829000000},"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":332000000},"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":332000000},"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":332000000},"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":829000000},"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":828000000},"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":331000000},"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":828000000},"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":828000000},"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":828000000},"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":331000000},"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":331000000},"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":331000000},"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":828000000},"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":828000000},"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":828000000},"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":828000000},"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":331000000},"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":828000000},"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":331000000},"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":828000000},"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":827000000},"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":827000000},"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":330000000},"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":827000000},"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":827000000},"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":827000000},"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":330000000},"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":330000000},"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":827000000},"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":330000000},"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":330000000},"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":330000000},"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":330000000},"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":330000000},"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":827000000},"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":330000000},"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":329000000},"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":329000000},"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":329000000},"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":329000000},"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":329000000},"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":827000000},"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":827000000},"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":17,"nanosecond":827000000},"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":329000000},"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":329000000},"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":328000000},"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":328000000},"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":827000000},"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":328000000},"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":328000000},"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":328000000},"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":328000000},"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":328000000},"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":827000000},"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":827000000},"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":20,"nanosecond":327000000},"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":827000000},"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":327000000},"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":327000000},"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":827000000},"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":827000000},"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":827000000},"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":327000000},"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":327000000},"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":327000000},"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":326000000},"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":326000000},"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":827000000},"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":840000000},"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":840000000},"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":821000000},"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":840000000},"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":840000000},"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":838000000},"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":821000000},"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":838000000},"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":838000000},"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":838000000},"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":837000000},"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":837000000},"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":837000000},"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":821000000},"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":837000000},"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":821000000},"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":837000000},"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":821000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":339000000},"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":336000000},"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":821000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":334000000},"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":821000000},"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":333000000},"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":333000000},"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":333000000},"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":821000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":320000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":821000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:35.960Z"}},{"id":"openflow:1","flow-node-inventory:port-number":36446,"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":"17","active-flows":101,"packets-matched":"7"},"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":48000000}},"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":43000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":43000000}},"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":43000000}},"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":48000000}},"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":43000000}},"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":43000000}},"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":48000000}},"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":43000000}},"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":48000000}},"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":43000000}},"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":0,"nanosecond":32000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":25000000}},"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":26000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":48000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":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":0,"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":0,"nanosecond":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":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":0,"nanosecond":32000000}},"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":26000000}},"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":31000000}},"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":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":0,"nanosecond":31000000}},"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":31000000}},"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":31000000}},"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":48000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":32000000}},"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":26000000}},"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":43000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"flags":""}]},{"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-08-10T02:10:35.880Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:0c:9d:31:4a:a7","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":21,"nanosecond":409000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:db:75:2c:3f:45","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":405000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a2:44:ce:79:68:eb","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":21,"nanosecond":409000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":307000000},"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":307000000},"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":307000000},"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":145000000},"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":144000000},"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":144000000},"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":144000000},"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":307000000},"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":816000000},"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":144000000},"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":816000000},"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":144000000},"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":144000000},"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":816000000},"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":816000000},"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":143000000},"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":143000000},"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":143000000},"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":143000000},"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":143000000},"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":816000000},"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":827000000},"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":816000000},"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":827000000},"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":826000000},"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":824000000},"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":816000000},"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":824000000},"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":816000000},"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":824000000},"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":816000000},"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":816000000},"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":816000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":326000000},"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":816000000},"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":816000000},"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":325000000},"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":325000000},"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":325000000},"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":816000000},"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":816000000},"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":325000000},"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":816000000},"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":816000000},"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":816000000},"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":325000000},"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":324000000},"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":324000000},"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":816000000},"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":816000000},"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":816000000},"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":816000000},"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":324000000},"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":816000000},"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":324000000},"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":816000000},"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":816000000},"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":816000000},"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":323000000},"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":816000000},"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":816000000},"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":816000000},"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":323000000},"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":323000000},"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":816000000},"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":323000000},"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":323000000},"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":321000000},"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":321000000},"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":321000000},"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":816000000},"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":321000000},"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":321000000},"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":321000000},"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":319000000},"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":319000000},"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":319000000},"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":816000000},"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":816000000},"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":17,"nanosecond":816000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":816000000},"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":319000000},"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":319000000},"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":318000000},"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":318000000},"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":318000000},"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":816000000},"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":816000000},"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":20,"nanosecond":318000000},"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":816000000},"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":318000000},"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":318000000},"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":816000000},"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":816000000},"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":816000000},"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":317000000},"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":317000000},"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":317000000},"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":317000000},"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":317000000},"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":816000000},"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":825000000},"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":825000000},"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":816000000},"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":825000000},"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":825000000},"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":825000000},"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":816000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":816000000},"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":825000000},"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":816000000},"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":825000000},"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":816000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":325000000},"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":325000000},"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":816000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":816000000},"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":323000000},"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":323000000},"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":323000000},"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":816000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":823000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":816000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:35.950Z"}},{"id":"openflow:2","flow-node-inventory:port-number":36466,"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":"26","active-flows":101,"packets-matched":"10"},"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":62000000}},"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":34000000}},"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":62000000}},"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":29000000}},"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":62000000}},"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":34000000}},"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":34000000}},"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":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":0,"nanosecond":42000000}},"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":42000000}},"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":62000000}},"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":34000000}},"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":62000000}},"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":34000000}},"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":24000000}},"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":42000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":1000000}},"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":42000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":1000000}},"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":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"10","byte-count":"760","duration":{"second":0,"nanosecond":35000000}},"flags":"SEND_FLOW_REM"},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":20000000}},"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":55000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":1000000}},"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":20000000}},"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":42000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":1000000}},"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":20000000}},"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":55000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":21000000}},"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":1000000}},"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":20000000}},"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":62000000}},"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":55000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":21000000}},"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":1000000}},"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":20000000}},"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":34000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":5000000}},"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":1000000}},"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":20000000}},"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":55000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":5000000}},"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":1000000}},"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":5000000}},"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":28000000}},"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":5000000}},"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":26000000}},"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":5000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":5000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":62000000}},"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":1000000}},"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":1000000}},"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":5000000}},"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":5000000}},"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":29000000}},"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":4000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"flags":""}]},{"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-08-10T02:10:35.905Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:f6:7e:6e:31:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":21,"nanosecond":407000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:26:96:e2:a9:46","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":396000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:da:5c:4a:47:8e","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":21,"nanosecond":407000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"3e:a0:f7:c4:e7:45","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":21,"nanosecond":407000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":319000000},"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":319000000},"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":319000000},"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":156000000},"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":155000000},"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":155000000},"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":155000000},"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":318000000},"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":837000000},"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":155000000},"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":836000000},"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":155000000},"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":155000000},"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":836000000},"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":836000000},"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":155000000},"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":155000000},"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":155000000},"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":155000000},"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":154000000},"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":836000000},"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":839000000},"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":836000000},"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":839000000},"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":839000000},"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":839000000},"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":836000000},"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":839000000},"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":836000000},"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":839000000},"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":836000000},"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":836000000},"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":836000000},"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":839000000},"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":839000000},"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":839000000},"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":839000000},"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":839000000},"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":341000000},"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":836000000},"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":836000000},"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":341000000},"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":340000000},"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":340000000},"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":836000000},"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":836000000},"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":340000000},"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":836000000},"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":836000000},"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":836000000},"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":338000000},"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":338000000},"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":337000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":337000000},"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":825000000},"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":337000000},"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":825000000},"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":825000000},"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":825000000},"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":335000000},"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":825000000},"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":825000000},"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":825000000},"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":335000000},"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":335000000},"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":825000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":825000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":825000000},"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":825000000},"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":17,"nanosecond":825000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":825000000},"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":333000000},"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":333000000},"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":333000000},"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":332000000},"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":332000000},"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":825000000},"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":825000000},"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":20,"nanosecond":332000000},"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":825000000},"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":332000000},"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":332000000},"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":825000000},"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":825000000},"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":825000000},"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":332000000},"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":332000000},"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":332000000},"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":332000000},"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":332000000},"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":825000000},"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":837000000},"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":836000000},"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":825000000},"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":836000000},"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":836000000},"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":836000000},"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":825000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":825000000},"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":836000000},"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":825000000},"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":836000000},"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":825000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":336000000},"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":336000000},"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":825000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":825000000},"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":336000000},"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":336000000},"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":336000000},"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":825000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":321000000},"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":321000000},"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":321000000},"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":321000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":825000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:35.962Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:37.461642" elapsed="0.014008"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:10:37.478996" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-08-10T02:10:37.479084" 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-08-10T02:10:37.475873" elapsed="0.003236"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-08-10T02:10:37.479714" 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-08-10T02:10:37.479309" elapsed="0.000494">303 != 300</status>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="FAIL" start="2026-08-10T02:10:37.414116" elapsed="0.065823">303 != 300</status>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:38.529602" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:38.531580" level="INFO">GET Response : url=http://10.30.170.209: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":36460,"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":"17","active-flows":101,"packets-matched":"7"},"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":50000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":59000000}},"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":30000000}},"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":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":0,"nanosecond":50000000}},"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":30000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":50000000}},"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":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":0,"nanosecond":22000000}},"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":50000000}},"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":[{"o... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:10:38.532161" 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-08-10T02:10:38.482304" elapsed="0.049912"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:38.538195" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":36460,"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":"17","active-flows":101,"packets-matched":"7"},"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":50000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":59000000}},"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":30000000}},"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":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":0,"nanosecond":50000000}},"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":30000000}},"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":30000000}},"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":50000000}},"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":30000000}},"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":50000000}},"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":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":0,"nanosecond":22000000}},"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":50000000}},"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":22000000}},"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":57000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":50000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":318000000}},"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":4000000}},"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":50000000}},"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":22000000}},"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":50000000}},"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":50000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":7000000}},"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":22000000}},"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":50000000}},"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":22000000}},"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":58000000}},"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":50000000}},"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":18000000}},"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":17,"nanosecond":318000000}},"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":2000000}},"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":"7","byte-count":"535","duration":{"second":0,"nanosecond":22000000}},"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":22000000}},"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":50000000}},"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":22000000}},"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":57000000}},"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":50000000}},"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":18000000}},"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":17,"nanosecond":318000000}},"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":4000000}},"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":21000000}},"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":50000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":21000000}},"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":50000000}},"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":50000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":20000000}},"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":30000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":20000000}},"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":50000000}},"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":30000000}},"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":50000000}},"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":50000000}},"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":19000000}},"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":20000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":20000000}},"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":22000000}},"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":20000000}},"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":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":0,"nanosecond":20000000}},"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":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":0,"nanosecond":20000000}},"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":22000000}},"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":59000000}},"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":17,"nanosecond":318000000}},"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":17,"nanosecond":318000000}},"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":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":0,"nanosecond":7000000}},"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":22000000}},"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":7000000}},"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":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":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":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":0,"nanosecond":37000000}},"flags":""}]},{"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-08-10T02:10:35.902Z"},"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:c0:d9:25:02: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":21,"nanosecond":404000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d6:e3:e1:10:f3:00","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":21,"nanosecond":415000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:70:47:d6:9c:9e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":21,"nanosecond":415000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":319000000},"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":318000000},"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":318000000},"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":156000000},"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":155000000},"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":155000000},"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":155000000},"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":318000000},"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":836000000},"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":155000000},"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":829000000},"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":155000000},"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":155000000},"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":829000000},"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":829000000},"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":155000000},"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":155000000},"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":155000000},"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":155000000},"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":155000000},"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":829000000},"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":839000000},"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":829000000},"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":839000000},"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":839000000},"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":839000000},"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":829000000},"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":839000000},"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":829000000},"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":839000000},"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":829000000},"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":829000000},"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":829000000},"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":839000000},"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":839000000},"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":839000000},"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":838000000},"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":838000000},"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":340000000},"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":829000000},"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":829000000},"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":332000000},"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":332000000},"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":332000000},"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":829000000},"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":828000000},"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":331000000},"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":828000000},"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":828000000},"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":828000000},"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":331000000},"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":331000000},"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":331000000},"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":828000000},"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":828000000},"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":828000000},"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":828000000},"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":331000000},"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":828000000},"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":331000000},"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":828000000},"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":827000000},"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":827000000},"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":330000000},"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":827000000},"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":827000000},"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":827000000},"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":330000000},"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":330000000},"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":827000000},"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":330000000},"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":330000000},"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":330000000},"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":330000000},"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":330000000},"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":827000000},"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":330000000},"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":329000000},"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":329000000},"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":329000000},"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":329000000},"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":329000000},"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":827000000},"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":827000000},"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":17,"nanosecond":827000000},"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":329000000},"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":329000000},"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":328000000},"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":328000000},"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":827000000},"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":328000000},"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":328000000},"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":328000000},"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":328000000},"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":328000000},"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":827000000},"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":827000000},"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":20,"nanosecond":327000000},"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":827000000},"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":327000000},"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":327000000},"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":827000000},"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":827000000},"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":827000000},"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":327000000},"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":327000000},"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":327000000},"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":326000000},"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":326000000},"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":827000000},"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":840000000},"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":840000000},"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":821000000},"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":840000000},"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":840000000},"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":838000000},"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":821000000},"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":838000000},"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":838000000},"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":838000000},"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":837000000},"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":837000000},"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":837000000},"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":821000000},"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":837000000},"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":821000000},"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":837000000},"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":821000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":339000000},"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":336000000},"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":821000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":334000000},"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":821000000},"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":333000000},"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":333000000},"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":333000000},"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":821000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":320000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":821000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:35.960Z"}},{"id":"openflow:1","flow-node-inventory:port-number":36446,"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":"17","active-flows":101,"packets-matched":"7"},"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":48000000}},"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":43000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":43000000}},"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":43000000}},"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":48000000}},"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":43000000}},"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":43000000}},"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":48000000}},"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":43000000}},"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":48000000}},"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":43000000}},"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":0,"nanosecond":32000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":25000000}},"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":26000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":31000000}},"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":48000000}},"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":48000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":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":0,"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":0,"nanosecond":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":31000000}},"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":48000000}},"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":32000000}},"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":48000000}},"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":48000000}},"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":26000000}},"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":31000000}},"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":25000000}},"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":26000000}},"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":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":0,"nanosecond":32000000}},"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":26000000}},"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":31000000}},"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":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":0,"nanosecond":31000000}},"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":31000000}},"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":31000000}},"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":48000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":26000000}},"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":32000000}},"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":26000000}},"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":43000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"flags":""}]},{"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-08-10T02:10:35.880Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:0c:9d:31:4a:a7","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":21,"nanosecond":409000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:db:75:2c:3f:45","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":405000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a2:44:ce:79:68:eb","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":21,"nanosecond":409000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":307000000},"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":307000000},"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":307000000},"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":145000000},"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":144000000},"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":144000000},"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":144000000},"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":307000000},"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":816000000},"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":144000000},"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":816000000},"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":144000000},"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":144000000},"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":816000000},"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":816000000},"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":143000000},"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":143000000},"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":143000000},"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":143000000},"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":143000000},"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":816000000},"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":827000000},"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":816000000},"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":827000000},"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":826000000},"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":824000000},"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":816000000},"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":824000000},"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":816000000},"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":824000000},"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":816000000},"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":816000000},"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":816000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":326000000},"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":816000000},"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":816000000},"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":325000000},"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":325000000},"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":325000000},"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":816000000},"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":816000000},"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":325000000},"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":816000000},"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":816000000},"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":816000000},"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":325000000},"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":324000000},"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":324000000},"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":816000000},"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":816000000},"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":816000000},"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":816000000},"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":324000000},"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":816000000},"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":324000000},"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":816000000},"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":816000000},"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":816000000},"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":323000000},"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":816000000},"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":816000000},"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":816000000},"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":323000000},"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":323000000},"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":816000000},"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":323000000},"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":323000000},"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":321000000},"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":321000000},"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":321000000},"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":816000000},"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":321000000},"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":321000000},"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":321000000},"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":319000000},"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":319000000},"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":319000000},"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":816000000},"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":816000000},"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":17,"nanosecond":816000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":816000000},"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":319000000},"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":319000000},"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":318000000},"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":318000000},"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":318000000},"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":816000000},"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":816000000},"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":20,"nanosecond":318000000},"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":816000000},"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":318000000},"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":318000000},"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":816000000},"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":816000000},"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":816000000},"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":317000000},"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":317000000},"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":317000000},"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":317000000},"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":317000000},"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":816000000},"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":825000000},"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":825000000},"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":816000000},"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":825000000},"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":825000000},"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":825000000},"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":816000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":816000000},"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":825000000},"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":816000000},"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":825000000},"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":816000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":325000000},"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":325000000},"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":816000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":324000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":816000000},"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":323000000},"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":323000000},"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":323000000},"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":816000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":323000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":824000000},"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":823000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":816000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"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":307000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:35.950Z"}},{"id":"openflow:2","flow-node-inventory:port-number":36466,"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":"26","active-flows":101,"packets-matched":"10"},"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":62000000}},"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":34000000}},"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":62000000}},"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":29000000}},"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":62000000}},"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":34000000}},"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":34000000}},"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":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":0,"nanosecond":42000000}},"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":42000000}},"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":62000000}},"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":34000000}},"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":62000000}},"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":34000000}},"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":24000000}},"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":42000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":1000000}},"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":42000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":1000000}},"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":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"10","byte-count":"760","duration":{"second":0,"nanosecond":35000000}},"flags":"SEND_FLOW_REM"},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":20000000}},"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":55000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":1000000}},"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":20000000}},"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":42000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":1000000}},"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":20000000}},"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":55000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":21000000}},"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":1000000}},"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":20000000}},"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":62000000}},"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":55000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":21000000}},"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":1000000}},"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":20000000}},"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":34000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":5000000}},"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":1000000}},"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":20000000}},"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":55000000}},"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":29000000}},"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":62000000}},"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":62000000}},"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":5000000}},"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":5000000}},"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":1000000}},"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":5000000}},"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":28000000}},"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":5000000}},"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":26000000}},"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":5000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":5000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":62000000}},"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":1000000}},"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":1000000}},"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":5000000}},"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":5000000}},"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":29000000}},"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":4000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"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":42000000}},"flags":""}]},{"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-08-10T02:10:35.905Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:f6:7e:6e:31:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":21,"nanosecond":407000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:26:96:e2:a9:46","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":396000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:da:5c:4a:47:8e","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":21,"nanosecond":407000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"3e:a0:f7:c4:e7:45","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":21,"nanosecond":407000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":319000000},"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":319000000},"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":319000000},"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":156000000},"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":155000000},"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":155000000},"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":155000000},"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":318000000},"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":837000000},"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":155000000},"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":836000000},"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":155000000},"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":155000000},"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":836000000},"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":836000000},"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":155000000},"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":155000000},"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":155000000},"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":155000000},"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":154000000},"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":836000000},"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":839000000},"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":836000000},"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":839000000},"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":839000000},"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":839000000},"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":836000000},"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":839000000},"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":836000000},"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":839000000},"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":836000000},"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":836000000},"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":836000000},"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":839000000},"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":839000000},"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":839000000},"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":839000000},"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":839000000},"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":341000000},"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":836000000},"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":836000000},"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":341000000},"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":340000000},"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":340000000},"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":836000000},"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":836000000},"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":340000000},"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":836000000},"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":836000000},"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":836000000},"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":338000000},"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":338000000},"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":337000000},"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":825000000},"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":825000000},"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":825000000},"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":825000000},"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":337000000},"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":825000000},"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":337000000},"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":825000000},"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":825000000},"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":825000000},"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":335000000},"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":825000000},"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":825000000},"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":825000000},"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":335000000},"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":335000000},"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":825000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":335000000},"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":825000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":825000000},"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":825000000},"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":17,"nanosecond":825000000},"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":333000000},"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":333000000},"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":333000000},"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":333000000},"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":825000000},"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":333000000},"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":333000000},"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":333000000},"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":332000000},"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":332000000},"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":825000000},"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":825000000},"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":20,"nanosecond":332000000},"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":825000000},"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":332000000},"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":332000000},"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":825000000},"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":825000000},"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":825000000},"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":332000000},"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":332000000},"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":332000000},"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":332000000},"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":332000000},"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":825000000},"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":837000000},"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":836000000},"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":825000000},"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":836000000},"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":836000000},"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":836000000},"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":825000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":825000000},"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":836000000},"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":825000000},"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":836000000},"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":825000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":336000000},"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":336000000},"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":825000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":825000000},"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":336000000},"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":336000000},"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":336000000},"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":825000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":336000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":837000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":836000000},"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":321000000},"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":321000000},"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":321000000},"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":321000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":825000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"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":319000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:35.962Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:38.532982" elapsed="0.011597"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:10:38.548087" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-08-10T02:10:38.548180" 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-08-10T02:10:38.544812" elapsed="0.003394"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-08-10T02:10:38.548850" 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-08-10T02:10:38.548432" elapsed="0.000523">303 != 300</status>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="FAIL" start="2026-08-10T02:10:38.481081" elapsed="0.068047">303 != 300</status>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:10:39.596982" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:39.599498" level="INFO">GET Response : url=http://10.30.170.209: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":36460,"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":"18","active-flows":100,"packets-matched":"8"},"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":61000000}},"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":61000000}},"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":60000000}},"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":59000000}},"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":59000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:10:39.600169" 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-08-10T02:10:39.551607" elapsed="0.048635"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.606829" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":36460,"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":"18","active-flows":100,"packets-matched":"8"},"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":61000000}},"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":61000000}},"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":60000000}},"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":59000000}},"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":59000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":39000000}},"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":39000000}},"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":39000000}},"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":39000000}},"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":39000000}},"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":39000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":"8","byte-count":"620","duration":{"second":3,"nanosecond":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":23000000}},"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":23000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":21000000}},"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":21000000}},"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":21000000}},"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":21000000}},"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":20000000}},"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":20000000}},"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":9000000}},"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":9000000}},"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":6000000}},"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":6000000}},"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":4000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"flags":""}]},{"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-08-10T02:10:38.910Z"},"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:c0:d9:25:02: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":24,"nanosecond":393000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d6:e3:e1:10:f3:00","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":24,"nanosecond":404000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:70:47:d6:9c:9e","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":24,"nanosecond":404000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":21,"nanosecond":320000000},"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":21,"nanosecond":319000000},"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":21,"nanosecond":319000000},"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":24,"nanosecond":157000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":21,"nanosecond":319000000},"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":20,"nanosecond":837000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":830000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":830000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":839000000},"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":23,"nanosecond":839000000},"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":23,"nanosecond":341000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":829000000},"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":23,"nanosecond":332000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":23,"nanosecond":332000000},"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":23,"nanosecond":332000000},"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":23,"nanosecond":332000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":23,"nanosecond":332000000},"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":20,"nanosecond":829000000},"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":23,"nanosecond":332000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":331000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":328000000},"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":23,"nanosecond":328000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":328000000},"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":23,"nanosecond":328000000},"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":23,"nanosecond":328000000},"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":23,"nanosecond":327000000},"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":23,"nanosecond":327000000},"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":20,"nanosecond":828000000},"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":22,"nanosecond":841000000},"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":22,"nanosecond":841000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":841000000},"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":22,"nanosecond":841000000},"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":22,"nanosecond":839000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":839000000},"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":22,"nanosecond":839000000},"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":22,"nanosecond":839000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":838000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":838000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":340000000},"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":22,"nanosecond":337000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":335000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":321000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":20,"nanosecond":822000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:38.949Z"}},{"id":"openflow:1","flow-node-inventory:port-number":36446,"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":"18","active-flows":100,"packets-matched":"8"},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":"8","byte-count":"620","duration":{"second":3,"nanosecond":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":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":3,"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":3,"nanosecond":29000000}},"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":29000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"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":24000000}},"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":24000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"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":24000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"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":24000000}},"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":24000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"flags":""}]},{"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-08-10T02:10:38.891Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:0c:9d:31:4a:a7","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":24,"nanosecond":406000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:db:75:2c:3f:45","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":24,"nanosecond":402000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a2:44:ce:79:68:eb","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":24,"nanosecond":407000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":24,"nanosecond":143000000},"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":24,"nanosecond":142000000},"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":24,"nanosecond":142000000},"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":24,"nanosecond":142000000},"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":21,"nanosecond":305000000},"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":20,"nanosecond":814000000},"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":24,"nanosecond":142000000},"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":20,"nanosecond":814000000},"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":24,"nanosecond":142000000},"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":24,"nanosecond":142000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":24,"nanosecond":141000000},"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":24,"nanosecond":141000000},"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":24,"nanosecond":141000000},"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":24,"nanosecond":141000000},"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":24,"nanosecond":141000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":825000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":825000000},"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":23,"nanosecond":824000000},"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":23,"nanosecond":822000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":822000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":822000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":324000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":323000000},"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":23,"nanosecond":323000000},"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":23,"nanosecond":323000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":323000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":323000000},"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":23,"nanosecond":322000000},"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":23,"nanosecond":322000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":322000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":322000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":321000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":321000000},"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":23,"nanosecond":321000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":321000000},"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":23,"nanosecond":321000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":319000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":316000000},"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":23,"nanosecond":316000000},"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":23,"nanosecond":316000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":316000000},"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":23,"nanosecond":316000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":315000000},"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":23,"nanosecond":315000000},"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":23,"nanosecond":315000000},"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":23,"nanosecond":315000000},"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":23,"nanosecond":315000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":323000000},"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":22,"nanosecond":323000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":821000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":20,"nanosecond":814000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:38.948Z"}},{"id":"openflow:2","flow-node-inventory:port-number":36466,"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":"28","active-flows":100,"packets-matched":"12"},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":50000000}},"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":44000000}},"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":44000000}},"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":44000000}},"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":44000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":18000000}},"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":18000000}},"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":18000000}},"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":18000000}},"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":18000000}},"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":18000000}},"flags":""},{"id":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"12","byte-count":"930","duration":{"second":3,"nanosecond":23000000}},"flags":"SEND_FLOW_REM"},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":18000000}},"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":17000000}},"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":15000000}},"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":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":3,"nanosecond":14000000}},"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":13000000}},"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":2,"nanosecond":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":992000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"flags":""}]},{"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-08-10T02:10:38.910Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:f6:7e:6e:31:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":24,"nanosecond":395000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:26:96:e2:a9:46","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":24,"nanosecond":384000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:da:5c:4a:47:8e","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":24,"nanosecond":395000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"3e:a0:f7:c4:e7:45","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":24,"nanosecond":395000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":24,"nanosecond":157000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":21,"nanosecond":319000000},"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":20,"nanosecond":838000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":837000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":155000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":342000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":342000000},"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":23,"nanosecond":341000000},"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":23,"nanosecond":341000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":341000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":339000000},"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":23,"nanosecond":339000000},"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":23,"nanosecond":338000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":338000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":338000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":336000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":322000000},"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":21,"nanosecond":322000000},"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":21,"nanosecond":322000000},"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":21,"nanosecond":322000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":20,"nanosecond":826000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:38.951Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:39.601009" elapsed="0.011547"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.621545" level="INFO">Item found from container 300 times.</msg>
<msg time="2026-08-10T02:10:39.621637" 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-08-10T02:10:39.612781" elapsed="0.008880"/>
</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-08-10T02:10:39.621868" elapsed="0.000320"/>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-08-10T02:10:39.550420" elapsed="0.071850"/>
</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-08-10T02:10:36.346436" elapsed="3.275891"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-08-10T02:10:36.345623" elapsed="3.276883"/>
</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-08-10T02:10:39.664276" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:10:39.664992" level="INFO">GET Response : url=http://10.30.170.209: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":36460,"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":"18","active-flows":100,"packets-matched":"8"},"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":61000000}},"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":61000000}},"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":60000000}},"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":59000000}},"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":59000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:10:39.665235" 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-08-10T02:10:39.624015" elapsed="0.041248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.668733" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":36460,"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":"18","active-flows":100,"packets-matched":"8"},"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":61000000}},"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":61000000}},"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":60000000}},"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":59000000}},"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":59000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":52000000}},"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":39000000}},"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":39000000}},"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":39000000}},"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":39000000}},"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":39000000}},"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":39000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":"8","byte-count":"620","duration":{"second":3,"nanosecond":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":23000000}},"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":23000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":21000000}},"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":21000000}},"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":21000000}},"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":21000000}},"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":20000000}},"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":20000000}},"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":9000000}},"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":9000000}},"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":6000000}},"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":6000000}},"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":4000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"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":976000000}},"flags":""}]},{"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-08-10T02:10:38.910Z"},"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:c0:d9:25:02: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":24,"nanosecond":393000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d6:e3:e1:10:f3:00","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":24,"nanosecond":404000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:70:47:d6:9c:9e","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":24,"nanosecond":404000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":21,"nanosecond":320000000},"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":21,"nanosecond":319000000},"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":21,"nanosecond":319000000},"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":24,"nanosecond":157000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":21,"nanosecond":319000000},"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":20,"nanosecond":837000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":830000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":830000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":839000000},"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":23,"nanosecond":839000000},"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":23,"nanosecond":341000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":830000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":20,"nanosecond":830000000},"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":20,"nanosecond":829000000},"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":23,"nanosecond":332000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":23,"nanosecond":332000000},"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":23,"nanosecond":332000000},"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":23,"nanosecond":332000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":829000000},"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":23,"nanosecond":332000000},"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":20,"nanosecond":829000000},"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":23,"nanosecond":332000000},"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":20,"nanosecond":829000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":331000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":331000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":331000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":330000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":23,"nanosecond":329000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":328000000},"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":23,"nanosecond":328000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":20,"nanosecond":828000000},"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":23,"nanosecond":328000000},"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":23,"nanosecond":328000000},"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":23,"nanosecond":328000000},"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":23,"nanosecond":327000000},"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":23,"nanosecond":327000000},"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":20,"nanosecond":828000000},"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":22,"nanosecond":841000000},"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":22,"nanosecond":841000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":841000000},"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":22,"nanosecond":841000000},"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":22,"nanosecond":839000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":839000000},"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":22,"nanosecond":839000000},"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":22,"nanosecond":839000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":838000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":838000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":340000000},"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":22,"nanosecond":337000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":336000000},"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":22,"nanosecond":335000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":20,"nanosecond":822000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":22,"nanosecond":334000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":321000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":20,"nanosecond":822000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:38.949Z"}},{"id":"openflow:1","flow-node-inventory:port-number":36446,"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":"18","active-flows":100,"packets-matched":"8"},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":46000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":41000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":"8","byte-count":"620","duration":{"second":3,"nanosecond":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":29000000}},"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":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":3,"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":3,"nanosecond":29000000}},"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":29000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":24000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"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":24000000}},"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":24000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"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":24000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":24000000}},"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":24000000}},"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":24000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"flags":""}]},{"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-08-10T02:10:38.891Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:0c:9d:31:4a:a7","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":24,"nanosecond":406000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:db:75:2c:3f:45","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":24,"nanosecond":402000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a2:44:ce:79:68:eb","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":24,"nanosecond":407000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":24,"nanosecond":143000000},"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":24,"nanosecond":142000000},"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":24,"nanosecond":142000000},"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":24,"nanosecond":142000000},"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":21,"nanosecond":305000000},"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":20,"nanosecond":814000000},"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":24,"nanosecond":142000000},"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":20,"nanosecond":814000000},"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":24,"nanosecond":142000000},"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":24,"nanosecond":142000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":24,"nanosecond":141000000},"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":24,"nanosecond":141000000},"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":24,"nanosecond":141000000},"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":24,"nanosecond":141000000},"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":24,"nanosecond":141000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":825000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":825000000},"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":23,"nanosecond":824000000},"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":23,"nanosecond":822000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":822000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":822000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":822000000},"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":23,"nanosecond":324000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":323000000},"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":23,"nanosecond":323000000},"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":23,"nanosecond":323000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":323000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":323000000},"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":23,"nanosecond":322000000},"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":23,"nanosecond":322000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":322000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":322000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":321000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":321000000},"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":23,"nanosecond":321000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":321000000},"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":23,"nanosecond":321000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":319000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":319000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":317000000},"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":23,"nanosecond":316000000},"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":23,"nanosecond":316000000},"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":23,"nanosecond":316000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":316000000},"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":23,"nanosecond":316000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":20,"nanosecond":814000000},"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":23,"nanosecond":315000000},"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":23,"nanosecond":315000000},"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":23,"nanosecond":315000000},"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":23,"nanosecond":315000000},"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":23,"nanosecond":315000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":823000000},"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":22,"nanosecond":323000000},"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":22,"nanosecond":323000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":322000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":20,"nanosecond":814000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":22,"nanosecond":321000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":822000000},"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":21,"nanosecond":821000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":20,"nanosecond":814000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"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":21,"nanosecond":305000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:38.948Z"}},{"id":"openflow:2","flow-node-inventory:port-number":36466,"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":"28","active-flows":100,"packets-matched":"12"},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":51000000}},"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":50000000}},"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":44000000}},"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":44000000}},"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":44000000}},"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":44000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":23000000}},"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":18000000}},"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":18000000}},"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":18000000}},"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":18000000}},"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":18000000}},"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":18000000}},"flags":""},{"id":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"12","byte-count":"930","duration":{"second":3,"nanosecond":23000000}},"flags":"SEND_FLOW_REM"},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":18000000}},"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":17000000}},"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":15000000}},"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":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":3,"nanosecond":14000000}},"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":13000000}},"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":2,"nanosecond":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":993000000}},"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":992000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"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":989000000}},"flags":""}]},{"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-08-10T02:10:38.910Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:f6:7e:6e:31:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":24,"nanosecond":395000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:26:96:e2:a9:46","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":24,"nanosecond":384000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:da:5c:4a:47:8e","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":24,"nanosecond":395000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"3e:a0:f7:c4:e7:45","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":24,"nanosecond":395000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":24,"nanosecond":157000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":21,"nanosecond":319000000},"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":20,"nanosecond":838000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":837000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":156000000},"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":24,"nanosecond":155000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":840000000},"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":23,"nanosecond":342000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":342000000},"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":23,"nanosecond":341000000},"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":23,"nanosecond":341000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":341000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":20,"nanosecond":837000000},"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":23,"nanosecond":339000000},"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":23,"nanosecond":339000000},"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":23,"nanosecond":338000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":338000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":338000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":336000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":23,"nanosecond":336000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":334000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":20,"nanosecond":826000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":23,"nanosecond":333000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":838000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":837000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":20,"nanosecond":826000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":22,"nanosecond":337000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":838000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":837000000},"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":21,"nanosecond":322000000},"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":21,"nanosecond":322000000},"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":21,"nanosecond":322000000},"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":21,"nanosecond":322000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":20,"nanosecond":826000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"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":21,"nanosecond":320000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:10:38.951Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:39.665537" elapsed="0.008862"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.679037" level="INFO">Item found from container 594 times.</msg>
<msg time="2026-08-10T02:10:39.679179" 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-08-10T02:10:39.674703" elapsed="0.004506"/>
</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-08-10T02:10:39.679426" elapsed="0.000319"/>
</kw>
<arg>${less_groups}</arg>
<doc>Check number of groups in the inventory.</doc>
<status status="PASS" start="2026-08-10T02:10:39.623663" elapsed="0.056150"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-08-10T02:10:39.622939" elapsed="0.056991"/>
</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-08-10T02:10:39.681610" elapsed="0.000155"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:39.681323" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:39.681290" elapsed="0.000548"/>
</if>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.682282" 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-08-10T02:10:39.682024" elapsed="0.000284"/>
</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-08-10T02:10:39.683211" elapsed="0.000160"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:39.682986" elapsed="0.000422"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:39.682969" elapsed="0.000463"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:10:39.726368" 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-08-10T02:10:39.683571" elapsed="0.042865"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:10:39.821124" level="INFO">*** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=8 byte_count=620 flow_count=100
*** s2 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=12 byte_count=930 flow_count=100
*** s3 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=8 byte_count=620 flow_count=100
mininet&gt;</msg>
<msg time="2026-08-10T02:10:39.821241" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=8 byte_count=620 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-08-10T02:10:39.726647" elapsed="0.094622"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:39.821349" elapsed="0.000062"/>
</return>
<msg time="2026-08-10T02:10:39.821554" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=8 byte_count=620 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-08-10T02:10:39.682682" elapsed="0.138901"/>
</kw>
<kw name="Get Regexp Matches" owner="String">
<msg time="2026-08-10T02:10:39.822058" 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-08-10T02:10:39.821760" elapsed="0.000324"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.822738" 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-08-10T02:10:39.822249" elapsed="0.000517"/>
</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-08-10T02:10:39.822978" elapsed="0.000330"/>
</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-08-10T02:10:39.680963" elapsed="0.142424"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-08-10T02:10:39.680235" elapsed="0.143263"/>
</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-08-10T02:10:39.830211" 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-08-10T02:10:39.829732" elapsed="0.000507"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.830769" 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-08-10T02:10:39.830430" elapsed="0.000366"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-10T02:10:39.830842" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:39.830999" 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-08-10T02:10:39.829215" elapsed="0.001809"/>
</kw>
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.832010" 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-08-10T02:10:39.831632" elapsed="0.000405"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.832566" 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-08-10T02:10:39.832247" elapsed="0.000347"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-10T02:10:39.832650" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:10:39.832811" 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-08-10T02:10:39.831233" elapsed="0.001603"/>
</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-08-10T02:10:39.834295" 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-08-10T02:10:39.833919" elapsed="0.000403"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.834809" 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-08-10T02:10:39.834501" elapsed="0.000334"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-10T02:10:39.834880" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:39.835033" 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-08-10T02:10:39.833549" elapsed="0.001509"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:39.836193" level="INFO">${member_ip} = 10.30.170.209</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-08-10T02:10:39.835913" elapsed="0.000307"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:39.837009" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:39.837111" level="INFO">${current_connection} = index=5
host=10.30.171.177
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-08-10T02:10:39.836873" elapsed="0.000265"/>
</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-08-10T02:10:39.841158" elapsed="0.000075"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:39.840250" elapsed="0.001067"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:39.840086" elapsed="0.001348"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:39.841741" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:39.841979" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:39.841629" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.843139" level="INFO">Attempting to execute command "/tmp/karaf-0.22.3/bin/stop" on remote system "10.30.170.209" 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-08-10T02:10:39.842388" elapsed="0.000815"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:39.844326" 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-08-10T02:10:39.843507" elapsed="0.000974"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:39.846913" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:39.847093" 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-08-10T02:10:39.846319" elapsed="0.000818"/>
</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-08-10T02:10:39.847867" elapsed="0.000548"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:39.849955" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:40.176071" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:47 UTC 2026

  System load:  0.24               Processes:             119
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:33 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:39.849626" elapsed="0.326827"/>
</kw>
<msg time="2026-08-10T02:10:40.176634" 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-08-10T02:10:39.849140" elapsed="0.327644"/>
</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-08-10T02:10:39.844921" elapsed="0.332047"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:40.178044" level="INFO">Executing command '/tmp/karaf-0.22.3/bin/stop'.</msg>
<msg time="2026-08-10T02:10:40.567045" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:40.567747" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:40.568126" 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-08-10T02:10:40.177502" elapsed="0.390908"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:40.569450" elapsed="0.000816"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:40.573605" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:40.571832" elapsed="0.001908"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:40.574866" elapsed="0.000083"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:40.574191" elapsed="0.000904"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:40.574117" elapsed="0.001152"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:40.576011" elapsed="0.000112"/>
</return>
<status status="PASS" start="2026-08-10T02:10:40.575531" elapsed="0.000729"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:40.575490" elapsed="0.001015"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:40.576670" 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-08-10T02:10:40.586571" elapsed="0.000188"/>
</kw>
<msg time="2026-08-10T02:10:40.586837" 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-08-10T02:10:40.585560" elapsed="0.001384"/>
</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-08-10T02:10:40.587930" elapsed="0.000062"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:40.588996" elapsed="0.000056"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:10:40.577503" elapsed="0.011640"/>
</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-08-10T02:10:39.839177" elapsed="0.750367"/>
</kw>
<msg time="2026-08-10T02:10:40.589603" 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-08-10T02:10:39.838411" elapsed="0.751245"/>
</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-08-10T02:10:39.837858" elapsed="0.751882"/>
</kw>
<msg time="2026-08-10T02:10:40.589784" 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-08-10T02:10:39.837298" elapsed="0.752532"/>
</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-08-10T02:10:40.593173" elapsed="0.000151"/>
</kw>
<msg time="2026-08-10T02:10:40.593388" 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-08-10T02:10:40.592650" elapsed="0.000802"/>
</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-08-10T02:10:40.593609" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:40.593768" 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-08-10T02:10:40.590159" elapsed="0.003690"/>
</kw>
<msg time="2026-08-10T02:10:40.593961" 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-08-10T02:10:39.836460" elapsed="0.757527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:40.594528" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:40.594227" elapsed="0.000348"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:40.594618" 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-08-10T02:10:39.835504" elapsed="0.759314"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-08-10T02:10:39.835294" elapsed="0.759565"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-08-10T02:10:39.835128" elapsed="0.759778"/>
</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-08-10T02:10:39.833049" elapsed="0.761922"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:40.595455" 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-08-10T02:10:40.595134" elapsed="0.000347"/>
</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-08-10T02:10:40.595634" elapsed="0.000257"/>
</kw>
<if>
<branch type="IF" condition="not ${confirm}">
<return>
<value>${updated_index_list}</value>
<status status="NOT RUN" start="2026-08-10T02:10:40.596075" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:40.595966" elapsed="0.000152"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:40.595948" elapsed="0.000192"/>
</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-08-10T02:10:40.598201" 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-08-10T02:10:40.597898" elapsed="0.000330"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:40.599158" level="INFO">${member_ip} = 10.30.170.209</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-08-10T02:10:40.598874" elapsed="0.000310"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:40.599968" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:40.600069" level="INFO">${current_connection} = index=5
host=10.30.171.177
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-08-10T02:10:40.599836" elapsed="0.000259"/>
</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-08-10T02:10:40.604265" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:40.603970" elapsed="0.000354"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:40.603949" elapsed="0.000430"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:40.604637" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:40.604737" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:40.604528" elapsed="0.000236"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:40.605297" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.209" 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-08-10T02:10:40.604911" elapsed="0.000454"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:40.605951" 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-08-10T02:10:40.605521" elapsed="0.000456"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:40.606991" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:40.607068" 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-08-10T02:10:40.606697" elapsed="0.000395"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:10:40.607247" elapsed="0.000339"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:40.608472" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:40.927974" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:47 UTC 2026

  System load:  0.24               Processes:             119
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:40 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:40.608107" elapsed="0.320068"/>
</kw>
<msg time="2026-08-10T02:10:40.928390" 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-08-10T02:10:40.607752" elapsed="0.320757"/>
</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-08-10T02:10:40.606192" elapsed="0.322457"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:40.929235" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-08-10T02:10:40.952024" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:40.952275" level="INFO">${stdout} = 1</msg>
<msg time="2026-08-10T02:10:40.952419" 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-08-10T02:10:40.928928" elapsed="0.023545"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:40.952839" elapsed="0.000484"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:40.954499" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:40.953831" elapsed="0.000759"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:40.955077" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:40.954764" elapsed="0.000426"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:40.954709" elapsed="0.000533"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:40.955642" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:10:40.955408" elapsed="0.000364"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:40.955372" elapsed="0.000453"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:40.955897" 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-08-10T02:10:40.963600" elapsed="0.000158"/>
</kw>
<msg time="2026-08-10T02:10:40.963802" 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-08-10T02:10:40.962525" elapsed="0.001340"/>
</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-08-10T02:10:40.964023" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:40.964183" 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-08-10T02:10:40.956628" elapsed="0.007636"/>
</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-08-10T02:10:40.603302" elapsed="0.361164"/>
</kw>
<msg time="2026-08-10T02:10:40.964537" 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-08-10T02:10:40.601584" elapsed="0.363065"/>
</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-08-10T02:10:40.600783" elapsed="0.364075"/>
</kw>
<msg time="2026-08-10T02:10:40.964904" 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-08-10T02:10:40.600260" elapsed="0.364695"/>
</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-08-10T02:10:40.968320" elapsed="0.000240"/>
</kw>
<msg time="2026-08-10T02:10:40.968673" 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-08-10T02:10:40.967735" elapsed="0.001003"/>
</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-08-10T02:10:40.968898" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:40.969056" 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-08-10T02:10:40.965251" elapsed="0.003885"/>
</kw>
<msg time="2026-08-10T02:10:40.969227" 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-08-10T02:10:40.599422" elapsed="0.369831"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:40.969758" level="INFO">1</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:40.969501" elapsed="0.000301"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:40.969844" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:40.969998" 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-08-10T02:10:40.598467" elapsed="0.371597"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-08-10T02:10:40.970114" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:10:40.970266" 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-08-10T02:10:40.597525" elapsed="0.372766"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<msg time="2026-08-10T02:10:40.970923" 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-08-10T02:10:40.970487" elapsed="0.000521">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-08-10T02:10:40.597097" elapsed="0.374041">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-08-10T02:10:42.981223" 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-08-10T02:10:42.980746" elapsed="0.000522"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:42.982226" level="INFO">${member_ip} = 10.30.170.209</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-08-10T02:10:42.981939" elapsed="0.000314"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:42.983111" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:42.983221" level="INFO">${current_connection} = index=5
host=10.30.171.177
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-08-10T02:10:42.982936" elapsed="0.000312"/>
</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-08-10T02:10:42.988014" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:42.987618" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:42.987584" elapsed="0.000523"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:42.988410" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:42.988516" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:42.988266" elapsed="0.000277"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:42.989100" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.209" 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-08-10T02:10:42.988698" elapsed="0.000452"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:42.989830" 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-08-10T02:10:42.989314" elapsed="0.000544"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:42.990854" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:42.990935" 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-08-10T02:10:42.990521" elapsed="0.000438"/>
</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-08-10T02:10:42.991120" elapsed="0.000352"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:42.992391" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:43.315638" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:47 UTC 2026

  System load:  0.24               Processes:             119
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:40 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:42.992045" elapsed="0.324076"/>
</kw>
<msg time="2026-08-10T02:10:43.316292" 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-08-10T02:10:42.991673" elapsed="0.324828"/>
</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-08-10T02:10:42.990081" elapsed="0.326872"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:43.317968" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-08-10T02:10:43.341737" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:43.342004" level="INFO">${stdout} = 1</msg>
<msg time="2026-08-10T02:10:43.342108" 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-08-10T02:10:43.317478" elapsed="0.024682"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:43.342587" elapsed="0.000490"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:43.344201" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:43.343573" elapsed="0.000722"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:43.344831" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:43.344529" elapsed="0.000418"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:43.344474" elapsed="0.000523"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:43.345387" elapsed="0.000063"/>
</return>
<status status="PASS" start="2026-08-10T02:10:43.345115" elapsed="0.000410"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:43.345080" elapsed="0.000499"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:43.345653" 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-08-10T02:10:43.353414" elapsed="0.000161"/>
</kw>
<msg time="2026-08-10T02:10:43.353620" 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-08-10T02:10:43.352255" elapsed="0.001433"/>
</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-08-10T02:10:43.353846" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:43.354005" 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-08-10T02:10:43.346384" elapsed="0.007704"/>
</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-08-10T02:10:42.986893" elapsed="0.367378"/>
</kw>
<msg time="2026-08-10T02:10:43.354367" 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-08-10T02:10:42.984954" elapsed="0.369527"/>
</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-08-10T02:10:42.983995" elapsed="0.370694"/>
</kw>
<msg time="2026-08-10T02:10:43.354733" 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-08-10T02:10:42.983431" elapsed="0.371350"/>
</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-08-10T02:10:43.358062" elapsed="0.000215"/>
</kw>
<msg time="2026-08-10T02:10:43.358414" 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-08-10T02:10:43.357482" elapsed="0.000998"/>
</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-08-10T02:10:43.358639" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:43.358800" 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-08-10T02:10:43.355073" elapsed="0.003809"/>
</kw>
<msg time="2026-08-10T02:10:43.358975" 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-08-10T02:10:42.982495" elapsed="0.376505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:43.359486" level="INFO">1</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:43.359193" elapsed="0.000338"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:43.359576" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:43.359729" 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-08-10T02:10:42.981515" elapsed="0.378239"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-08-10T02:10:43.359801" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:10:43.359993" 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-08-10T02:10:42.980244" elapsed="0.379801"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<msg time="2026-08-10T02:10:43.360654" 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-08-10T02:10:43.360207" elapsed="0.000521">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-08-10T02:10:42.978839" elapsed="0.382003">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-08-10T02:10:45.364989" 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-08-10T02:10:45.364207" elapsed="0.000851"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:45.367066" level="INFO">${member_ip} = 10.30.170.209</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-08-10T02:10:45.366470" elapsed="0.000654"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:45.368778" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:45.368928" level="INFO">${current_connection} = index=5
host=10.30.171.177
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-08-10T02:10:45.368572" elapsed="0.000396"/>
</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-08-10T02:10:45.375599" elapsed="0.000061"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:45.374892" elapsed="0.000835"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:45.374857" elapsed="0.000913"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:45.376154" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:45.376305" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:45.375991" elapsed="0.000381"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:45.377169" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.209" 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-08-10T02:10:45.376596" elapsed="0.000640"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:45.378066" 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-08-10T02:10:45.377496" elapsed="0.000609"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:45.379581" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:45.379699" 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-08-10T02:10:45.379026" elapsed="0.000708"/>
</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-08-10T02:10:45.379970" elapsed="0.000408"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:45.381213" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:45.718322" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:09:47 UTC 2026

  System load:  0.24               Processes:             119
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:43 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:45.380899" elapsed="0.337642"/>
</kw>
<msg time="2026-08-10T02:10:45.718630" 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-08-10T02:10:45.380545" elapsed="0.338202"/>
</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-08-10T02:10:45.378449" elapsed="0.340430"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:45.719561" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-08-10T02:10:45.742824" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:45.742954" level="INFO">${stdout} = 1</msg>
<msg time="2026-08-10T02:10:45.743000" 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-08-10T02:10:45.719254" elapsed="0.023768"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:45.743193" elapsed="0.000283"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:45.744057" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:45.743727" 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-08-10T02:10:45.744386" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:45.744201" elapsed="0.000241"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:45.744170" elapsed="0.000295"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:45.744629" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-08-10T02:10:45.744520" elapsed="0.000168"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:45.744504" elapsed="0.000208"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:45.744746" elapsed="0.000014"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-08-10T02:10:45.748405" elapsed="0.000148"/>
</kw>
<msg time="2026-08-10T02:10:45.748596" 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-08-10T02:10:45.747804" elapsed="0.000857"/>
</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-08-10T02:10:45.748818" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:45.748977" 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-08-10T02:10:45.745083" elapsed="0.003974"/>
</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-08-10T02:10:45.373890" elapsed="0.375361"/>
</kw>
<msg time="2026-08-10T02:10:45.749353" 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-08-10T02:10:45.371225" elapsed="0.378239"/>
</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-08-10T02:10:45.369976" elapsed="0.379695"/>
</kw>
<msg time="2026-08-10T02:10:45.749714" 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-08-10T02:10:45.369198" elapsed="0.380563"/>
</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-08-10T02:10:45.753002" elapsed="0.000236"/>
</kw>
<msg time="2026-08-10T02:10:45.753386" 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-08-10T02:10:45.752438" elapsed="0.001014"/>
</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-08-10T02:10:45.753609" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:45.753767" elapsed="0.000019"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:10:45.750050" elapsed="0.003796"/>
</kw>
<msg time="2026-08-10T02:10:45.753936" 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-08-10T02:10:45.367782" elapsed="0.386179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:45.754430" level="INFO">1</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:45.754148" elapsed="0.000325"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:45.754515" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:45.754666" 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-08-10T02:10:45.365540" elapsed="0.389151"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-08-10T02:10:45.754739" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:10:45.754891" 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-08-10T02:10:45.363192" elapsed="0.391723"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<msg time="2026-08-10T02:10:45.755499" 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-08-10T02:10:45.755070" elapsed="0.000546">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-08-10T02:10:45.362053" elapsed="0.393679">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-08-10T02:10:47.759295" 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-08-10T02:10:47.758522" elapsed="0.000892"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:47.761480" level="INFO">${member_ip} = 10.30.170.209</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-08-10T02:10:47.760844" elapsed="0.000697"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:47.763262" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:47.763540" level="INFO">${current_connection} = index=5
host=10.30.171.177
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-08-10T02:10:47.762988" elapsed="0.000614"/>
</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-08-10T02:10:47.772192" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:47.771857" elapsed="0.000392"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:47.771831" elapsed="0.000444"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:47.772607" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:47.772734" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:47.772494" elapsed="0.000270"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:47.773320" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.209" 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-08-10T02:10:47.772918" elapsed="0.000489"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:47.773954" 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-08-10T02:10:47.773565" elapsed="0.000415"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:47.774927" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:47.775004" 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-08-10T02:10:47.774644" elapsed="0.000384"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:10:47.775186" elapsed="0.000350"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:47.776394" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:48.369553" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:45 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:47.776062" elapsed="0.593640"/>
</kw>
<msg time="2026-08-10T02:10:48.369784" 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-08-10T02:10:47.775705" elapsed="0.594171"/>
</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-08-10T02:10:47.774213" elapsed="0.595778"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.370513" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-08-10T02:10:48.393412" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:48.393662" level="INFO">${stdout} = 0</msg>
<msg time="2026-08-10T02:10:48.393760" 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-08-10T02:10:48.370245" elapsed="0.023718"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:48.394369" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.395975" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:48.395305" elapsed="0.000764"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:48.396572" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:48.396236" elapsed="0.000444"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:48.396187" elapsed="0.000542"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:48.397084" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:10:48.396846" elapsed="0.000370"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:48.396812" elapsed="0.000457"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:48.397380" 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-08-10T02:10:48.404886" elapsed="0.000234"/>
</kw>
<msg time="2026-08-10T02:10:48.405191" 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-08-10T02:10:48.403937" elapsed="0.001357"/>
</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-08-10T02:10:48.405562" elapsed="0.000032"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:48.405802" 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-08-10T02:10:48.398076" elapsed="0.007847"/>
</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-08-10T02:10:47.770834" elapsed="0.635336"/>
</kw>
<msg time="2026-08-10T02:10:48.406264" 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-08-10T02:10:47.766982" elapsed="0.639468"/>
</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-08-10T02:10:47.765116" elapsed="0.641615"/>
</kw>
<msg time="2026-08-10T02:10:48.406790" 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-08-10T02:10:47.763951" elapsed="0.642905"/>
</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-08-10T02:10:48.411519" elapsed="0.000279"/>
</kw>
<msg time="2026-08-10T02:10:48.411951" 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-08-10T02:10:48.410631" elapsed="0.001410"/>
</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-08-10T02:10:48.412258" elapsed="0.000029"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:48.412506" elapsed="0.000029"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:10:48.407285" elapsed="0.005336"/>
</kw>
<msg time="2026-08-10T02:10:48.412746" 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-08-10T02:10:47.762019" elapsed="0.650761"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.413433" level="INFO">0</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:48.413054" elapsed="0.000444"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:48.413557" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:10:48.413767" 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-08-10T02:10:47.759872" elapsed="0.653929"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-08-10T02:10:48.413866" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:10:48.414065" 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-08-10T02:10:47.757596" elapsed="0.656503"/>
</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-08-10T02:10:48.414375" elapsed="0.000502"/>
</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-08-10T02:10:47.756533" elapsed="0.658431"/>
</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-08-10T02:10:40.596531" elapsed="7.818541"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-08-10T02:10:40.596379" elapsed="7.818808"/>
</iter>
<var>${index}</var>
<value>@{stop_index_list}</value>
<status status="PASS" start="2026-08-10T02:10:40.596194" elapsed="7.819045"/>
</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-08-10T02:10:48.418448" 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-08-10T02:10:48.418038" elapsed="0.000437"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.418929" 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-08-10T02:10:48.418634" elapsed="0.000334"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-10T02:10:48.419013" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:48.419167" 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-08-10T02:10:48.417659" elapsed="0.001537"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:48.420256" level="INFO">${member_ip} = 10.30.170.209</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-08-10T02:10:48.419987" elapsed="0.000295"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.421033" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:48.421131" level="INFO">${current_connection} = index=5
host=10.30.171.177
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-08-10T02:10:48.420914" elapsed="0.000243"/>
</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-08-10T02:10:48.424957" elapsed="0.000067"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:48.424090" elapsed="0.001014"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:48.424070" elapsed="0.001113"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.425505" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:48.425738" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:48.425396" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.426873" level="INFO">Attempting to execute command "netstat -pnatu | grep 2550" on remote system "10.30.170.209" 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-08-10T02:10:48.426107" elapsed="0.000833"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.427999" 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-08-10T02:10:48.427216" elapsed="0.000890"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.430531" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:48.430712" 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-08-10T02:10:48.430043" elapsed="0.000714"/>
</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-08-10T02:10:48.431493" elapsed="0.000466"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.433576" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:48.771592" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:48 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:48.433235" elapsed="0.338460"/>
</kw>
<msg time="2026-08-10T02:10:48.771804" 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-08-10T02:10:48.432778" elapsed="0.339118"/>
</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-08-10T02:10:48.428694" elapsed="0.343373"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.772802" level="INFO">Executing command 'netstat -pnatu | grep 2550'.</msg>
<msg time="2026-08-10T02:10:48.786528" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-08-10T02:10:48.787071" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:48.787516" 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-08-10T02:10:48.772440" elapsed="0.015334"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:48.788860" elapsed="0.000749"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.792544" 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-08-10T02:10:48.791004" elapsed="0.001680"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:48.793759" elapsed="0.000072"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:48.793082" elapsed="0.000872"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:48.793029" elapsed="0.001090"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:48.794849" elapsed="0.000143"/>
</return>
<status status="PASS" start="2026-08-10T02:10:48.794319" elapsed="0.000807"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:48.794283" elapsed="0.001012"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:48.795437" elapsed="0.000024"/>
</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-08-10T02:10:48.802607" elapsed="0.000235"/>
</kw>
<msg time="2026-08-10T02:10:48.802951" 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-08-10T02:10:48.801510" elapsed="0.001604"/>
</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-08-10T02:10:48.804644" elapsed="0.000086"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:48.806232" elapsed="0.000081"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:10:48.795911" elapsed="0.010682"/>
</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-08-10T02:10:48.423192" elapsed="0.383766"/>
</kw>
<msg time="2026-08-10T02:10:48.807043" 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-08-10T02:10:48.422356" elapsed="0.384761"/>
</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-08-10T02:10:48.421819" elapsed="0.385414"/>
</kw>
<msg time="2026-08-10T02:10:48.807292" 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-08-10T02:10:48.421309" elapsed="0.386054"/>
</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-08-10T02:10:48.810552" elapsed="0.000141"/>
</kw>
<msg time="2026-08-10T02:10:48.810747" 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-08-10T02:10:48.810039" elapsed="0.000769"/>
</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-08-10T02:10:48.810964" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:48.811122" 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-08-10T02:10:48.807656" elapsed="0.003545"/>
</kw>
<msg time="2026-08-10T02:10:48.811290" 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-08-10T02:10:48.420512" elapsed="0.390802"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.811771" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:48.811525" elapsed="0.000287"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:48.811853" elapsed="0.000028"/>
</return>
<arg>command=${command}</arg>
<arg>member_index=${index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-08-10T02:10:48.419587" elapsed="0.392385"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-08-10T02:10:48.419410" elapsed="0.392599"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-08-10T02:10:48.419251" elapsed="0.392834"/>
</for>
<arg>command=netstat -pnatu | grep 2550</arg>
<doc>Cycle through indices (or all), run command on each.</doc>
<status status="PASS" start="2026-08-10T02:10:48.415516" elapsed="0.396628"/>
</kw>
<return>
<value>${updated_index_list}</value>
<status status="PASS" start="2026-08-10T02:10:48.812185" elapsed="0.000026"/>
</return>
<doc>If the list is empty, stops all ODL instances. Otherwise stop members based on ${stop_index_list}
If ${confirm} is True, verify stopped instances are not there anymore.
The KW will return a list of available members: ${updated index_list}=${original_index_list}-${member_index_list}</doc>
<status status="PASS" start="2026-08-10T02:10:39.824807" elapsed="8.987505"/>
</kw>
<msg time="2026-08-10T02:10:48.812424" level="INFO">${status} = PASS</msg>
<msg time="2026-08-10T02:10:48.812470" 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-08-10T02:10:39.824207" elapsed="8.988285"/>
</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-08-10T02:10:48.812975" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:48.812566" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:48.812549" elapsed="0.000504"/>
</if>
<kw name="Start_Members_From_List_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.825093" 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-08-10T02:10:48.824687" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.825685" 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-08-10T02:10:48.825296" elapsed="0.000416"/>
</kw>
<kw name="Get Current Date" owner="DateTime">
<msg time="2026-08-10T02:10:48.826152" level="INFO">${epoch} = 1786327848.826073</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-08-10T02:10:48.825872" elapsed="0.000307"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.826787" level="INFO">${gc_filepath} = /tmp/karaf-0.22.3/data/log/gc_1786327848.826073.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-08-10T02:10:48.826365" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.827372" level="INFO">${gc_options} = -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/tmp/karaf-0.22.3/data/log/gc_1786327848.826073.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-08-10T02:10:48.826980" elapsed="0.000420"/>
</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-08-10T02:10:48.828918" 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-08-10T02:10:48.828539" elapsed="0.000405"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.829418" 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-08-10T02:10:48.829100" elapsed="0.000345"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-10T02:10:48.829490" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:48.829648" 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-08-10T02:10:48.828147" elapsed="0.001525"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:10:48.830808" level="INFO">${member_ip} = 10.30.170.209</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-08-10T02:10:48.830474" elapsed="0.000370"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.831837" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:48.831943" level="INFO">${current_connection} = index=5
host=10.30.171.177
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-08-10T02:10:48.831500" elapsed="0.000471"/>
</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-08-10T02:10:48.835083" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:48.834793" elapsed="0.000375"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:48.834772" elapsed="0.000422"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.835500" level="INFO">index=5
host=10.30.171.177
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-08-10T02:10:48.835658" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:10:48.835378" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.836698" 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_1786327848.826073.log" on remote system "10.30.170.209" 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-08-10T02:10:48.835850" elapsed="0.000898"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.837520" 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-08-10T02:10:48.836905" elapsed="0.000643"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:10:48.838867" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:10:48.838981" 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-08-10T02:10:48.838280" elapsed="0.000782"/>
</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-08-10T02:10:48.839396" elapsed="0.000789"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:10:48.842649" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:10:49.171446" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:48 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:10:48.842064" elapsed="0.329563"/>
</kw>
<msg time="2026-08-10T02:10:49.171716" 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-08-10T02:10:48.840703" elapsed="0.331111"/>
</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-08-10T02:10:48.837764" elapsed="0.334394"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:10:49.172666" level="INFO">Executing command '/tmp/karaf-0.22.3/bin/start -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/tmp/karaf-0.22.3/data/log/gc_1786327848.826073.log'.</msg>
<msg time="2026-08-10T02:10:49.195155" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:10:49.195435" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:10:49.195534" 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-08-10T02:10:49.172388" elapsed="0.023196"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:10:49.195946" elapsed="0.000463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.197716" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:49.196833" elapsed="0.000977"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:49.198250" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:49.197974" elapsed="0.000419"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:49.197928" elapsed="0.000516"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:10:49.198790" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:10:49.198558" elapsed="0.000361"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:49.198525" elapsed="0.000475"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:10:49.199074" 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-08-10T02:10:49.210976" elapsed="0.000305"/>
</kw>
<msg time="2026-08-10T02:10:49.211380" 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-08-10T02:10:49.209558" elapsed="0.001905"/>
</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-08-10T02:10:49.211700" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:49.211918" 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-08-10T02:10:49.199792" elapsed="0.012258"/>
</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-08-10T02:10:48.834211" elapsed="0.377930"/>
</kw>
<msg time="2026-08-10T02:10:49.212240" 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-08-10T02:10:48.833191" elapsed="0.379099"/>
</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-08-10T02:10:48.832668" elapsed="0.379719"/>
</kw>
<msg time="2026-08-10T02:10:49.212428" 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-08-10T02:10:48.832129" elapsed="0.380342"/>
</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-08-10T02:10:49.215735" elapsed="0.000141"/>
</kw>
<msg time="2026-08-10T02:10:49.215919" 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-08-10T02:10:49.215224" elapsed="0.000754"/>
</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-08-10T02:10:49.216130" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:49.216287" 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-08-10T02:10:49.212757" elapsed="0.003628"/>
</kw>
<msg time="2026-08-10T02:10:49.216475" 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-08-10T02:10:48.831066" elapsed="0.385434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.216928" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:49.216682" elapsed="0.000287"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:10:49.217012" elapsed="0.000028"/>
</return>
<arg>command=${command}</arg>
<arg>member_index=${index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-08-10T02:10:48.830044" elapsed="0.387089"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-08-10T02:10:48.829864" elapsed="0.387304"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-08-10T02:10:48.829726" elapsed="0.387477"/>
</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-08-10T02:10:48.827619" elapsed="0.389637"/>
</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-08-10T02:10:49.226929" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:49.226591" elapsed="0.000396"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:49.226573" elapsed="0.000438"/>
</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-08-10T02:10:49.228485" 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-08-10T02:10:49.228083" elapsed="0.000429"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.228962" 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-08-10T02:10:49.228669" elapsed="0.000319"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-10T02:10:49.229033" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:49.229185" 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-08-10T02:10:49.227711" elapsed="0.001499"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.230228" 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-08-10T02:10:49.229936" elapsed="0.000318"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-08-10T02:10:49.230299" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:49.230464" 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-08-10T02:10:49.229596" elapsed="0.000893"/>
</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-08-10T02:10:49.320735" 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-08-10T02:10:49.319979" elapsed="0.000860"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:49.322758" 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-08-10T02:10:49.322448" elapsed="0.000457">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-08-10T02:10:49.323106" 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-08-10T02:10:49.321853" elapsed="0.001351"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.324973" 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-08-10T02:10:49.324207" elapsed="0.000865"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:49.326492" 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-08-10T02:10:49.326762" 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-08-10T02:10:49.326074" elapsed="0.000788"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.328232" 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-08-10T02:10:49.327834" elapsed="0.000613"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.329857" level="INFO">mapping: {}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:49.329566" elapsed="0.000336"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.330452" 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-08-10T02:10:49.330069" elapsed="0.000411"/>
</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-08-10T02:10:49.330800" elapsed="0.000021"/>
</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-08-10T02:10:49.331001" elapsed="0.000023"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:49.331172" elapsed="0.000020"/>
</kw>
<var name="${key}"/>
<var name="${value}"/>
<status status="NOT RUN" start="2026-08-10T02:10:49.330667" elapsed="0.000561"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="NOT RUN" start="2026-08-10T02:10:49.330529" elapsed="0.000730"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:49.331303" elapsed="0.000046"/>
</return>
<msg time="2026-08-10T02:10:49.331510" level="INFO">${mapping_to_use} = {}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:49.329181" elapsed="0.002378"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:49.328604" elapsed="0.002995"/>
</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-08-10T02:10:49.331934" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:49.331658" elapsed="0.000354"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:49.328550" elapsed="0.003518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.333835" 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-08-10T02:10:49.333088" elapsed="0.000847"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:49.334020" 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-08-10T02:10:49.317653" elapsed="0.016668"/>
</kw>
<msg time="2026-08-10T02:10:49.334653" 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-08-10T02:10:49.266585" elapsed="0.068122"/>
</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-08-10T02:10:49.346876" 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/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-08-10T02:10:49.358771" 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-08-10T02:10:49.370708" 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-08-10T02:10:49.370900" 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-08-10T02:10:49.371074" 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-08-10T02:10:49.371504" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:49.371358" elapsed="0.000303"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:49.371321" elapsed="0.000366"/>
</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-08-10T02:10:49.371829" 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-08-10T02:10:49.371995" 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-08-10T02:10:49.372158" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:49.371291" elapsed="0.000919"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:49.371149" elapsed="0.001087"/>
</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-08-10T02:10:49.372397" elapsed="0.000021"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:49.372473" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:49.372588" 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-08-10T02:10:49.262448" elapsed="0.110166"/>
</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-08-10T02:10:49.374070" 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-08-10T02:10:49.373680" elapsed="0.000533">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-08-10T02:10:49.374448" 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-08-10T02:10:49.373306" elapsed="0.001168"/>
</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-08-10T02:10:49.374789" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:49.374545" elapsed="0.000300"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.375575" 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-08-10T02:10:49.375052" elapsed="0.000550"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:49.374868" elapsed="0.000769"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:49.374527" elapsed="0.001132"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.378058" 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-08-10T02:10:49.375810" elapsed="0.002275"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:49.378137" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:49.378292" 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-08-10T02:10:49.372967" elapsed="0.005352"/>
</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-08-10T02:10:49.379751" 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-08-10T02:10:49.379331" elapsed="0.000561">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-08-10T02:10:49.380135" 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-08-10T02:10:49.378998" elapsed="0.001163"/>
</kw>
<if>
<branch type="IF" condition="${read_volatiles_file} == ${false}">
<return>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:10:49.380391" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-08-10T02:10:49.380232" elapsed="0.000220"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:49.380213" elapsed="0.000262"/>
</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-08-10T02:10:49.380619" 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-08-10T02:10:49.380787" elapsed="0.000020"/>
</kw>
<return>
<value>${volatiles_list}</value>
<status status="NOT RUN" start="2026-08-10T02:10:49.380852" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:10:49.382882" 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-08-10T02:10:49.378679" elapsed="0.004229"/>
</kw>
<kw name="Get_From_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.384385" 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-08-10T02:10:49.384098" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:49.384844" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:49.384583" elapsed="0.000304"/>
</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-08-10T02:10:49.390614" level="FAIL">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', 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-08-10T02:10:49.386976" elapsed="0.008769">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<status status="FAIL" start="2026-08-10T02:10:49.384953" elapsed="0.010884">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', 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-08-10T02:10:49.396027" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:49.395872" elapsed="0.000220"/>
</branch>
<status status="FAIL" start="2026-08-10T02:10:49.384935" elapsed="0.011180">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', 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-08-10T02:10:49.396664" elapsed="0.000027"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:49.396797" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:49.396760" elapsed="0.000083"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:49.396743" elapsed="0.000122"/>
</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-08-10T02:10:49.397007" elapsed="0.000023"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="NOT RUN" start="2026-08-10T02:10:49.397098" elapsed="0.000017"/>
</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-08-10T02:10:49.383251" elapsed="0.013959">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', 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-08-10T02:10:49.397289" elapsed="0.000020"/>
</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-08-10T02:10:49.240554" elapsed="0.156867">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', 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-08-10T02:10:49.397694" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:49.397518" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:49.397500" elapsed="0.000324"/>
</if>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:49.397857" elapsed="0.000014"/>
</return>
<arg>session=${session}</arg>
<arg>folder=${RESTCONF_MODULES_DIR}</arg>
<arg>verify=False</arg>
<doc>Add arguments sensible for JSON data, return Get_Templated response text.
Optionally, verification against JSON data (may be iterated) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.</doc>
<status status="FAIL" start="2026-08-10T02:10:49.234461" elapsed="0.163496">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<var name="${index}">1</var>
<status status="FAIL" start="2026-08-10T02:10:49.229429" elapsed="0.168595">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', 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-08-10T02:10:49.229262" elapsed="0.168820">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</for>
<arg>${member_index_list}</arg>
<status status="FAIL" start="2026-08-10T02:10:49.227313" elapsed="0.170862">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<status status="FAIL" start="2026-08-10T02:10:49.227063" elapsed="0.171168">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</branch>
<status status="FAIL" start="2026-08-10T02:10:49.227048" elapsed="0.171215">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', 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-08-10T02:10:49.398578" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:49.398356" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:49.398315" elapsed="0.000344"/>
</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-08-10T02:10:49.226156" elapsed="0.172583">ConnectionError: HTTPConnectionPool(host='10.30.170.209', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.209', 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-08-10T02:10:59.414532" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:59.414035" elapsed="0.000638"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:59.414003" elapsed="0.000717"/>
</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-08-10T02:10:59.416662" 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-08-10T02:10:59.416177" elapsed="0.000515"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.417161" 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-08-10T02:10:59.416855" elapsed="0.000332"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-10T02:10:59.417236" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:10:59.417421" 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-08-10T02:10:59.415749" elapsed="0.001698"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.418481" 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-08-10T02:10:59.418165" elapsed="0.000343"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-08-10T02:10:59.418554" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:10:59.418732" 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-08-10T02:10:59.417818" elapsed="0.000943"/>
</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-08-10T02:10:59.509149" 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-08-10T02:10:59.508530" elapsed="0.000719"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:10:59.511118" 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-08-10T02:10:59.510849" elapsed="0.000350">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-08-10T02:10:59.511504" 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-08-10T02:10:59.510320" elapsed="0.001281"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.513227" 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-08-10T02:10:59.512579" elapsed="0.000747"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:10:59.514750" 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-08-10T02:10:59.515031" 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-08-10T02:10:59.514393" elapsed="0.000735"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.516596" 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-08-10T02:10:59.516177" elapsed="0.000525"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.518159" level="INFO">mapping: {}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:59.517897" elapsed="0.000306"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.518737" 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-08-10T02:10:59.518428" elapsed="0.000335"/>
</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-08-10T02:10:59.519080" elapsed="0.000021"/>
</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-08-10T02:10:59.519283" 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-08-10T02:10:59.519568" elapsed="0.000022"/>
</kw>
<var name="${key}"/>
<var name="${value}"/>
<status status="NOT RUN" start="2026-08-10T02:10:59.518947" elapsed="0.000680"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="NOT RUN" start="2026-08-10T02:10:59.518811" elapsed="0.000847"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:10:59.519702" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:59.519885" level="INFO">${mapping_to_use} = {}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:10:59.517530" elapsed="0.002404"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:59.516851" elapsed="0.003124"/>
</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-08-10T02:10:59.520305" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:59.520032" elapsed="0.000369"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:59.516800" elapsed="0.003654"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.522137" 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-08-10T02:10:59.521426" elapsed="0.000811"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:10:59.522353" elapsed="0.000064"/>
</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-08-10T02:10:59.506170" elapsed="0.016524"/>
</kw>
<msg time="2026-08-10T02:10:59.522953" 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-08-10T02:10:59.454970" elapsed="0.068038"/>
</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-08-10T02:10:59.535397" 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-08-10T02:10:59.547580" 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-08-10T02:10:59.559625" 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-08-10T02:10:59.559820" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:59.559992" 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-08-10T02:10:59.560421" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:59.560254" elapsed="0.000325"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:59.560239" 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-08-10T02:10:59.560746" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:59.560909" elapsed="0.000019"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-10T02:10:59.561069" elapsed="0.000019"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:10:59.560209" elapsed="0.000911"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:10:59.560066" elapsed="0.001079"/>
</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-08-10T02:10:59.561288" elapsed="0.000021"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:59.561382" elapsed="0.000016"/>
</return>
<msg time="2026-08-10T02:10:59.561499" 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-08-10T02:10:59.450788" elapsed="0.110738"/>
</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-08-10T02:10:59.563046" 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-08-10T02:10:59.562655" elapsed="0.000536">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-08-10T02:10:59.563424" 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-08-10T02:10:59.562242" elapsed="0.001208"/>
</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-08-10T02:10:59.563768" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:59.563522" elapsed="0.000303"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.564566" 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-08-10T02:10:59.564043" elapsed="0.000550"/>
</kw>
<status status="PASS" start="2026-08-10T02:10:59.563849" elapsed="0.000780"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:59.563504" elapsed="0.001146"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.567126" 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-08-10T02:10:59.564800" elapsed="0.002353"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:10:59.567204" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:10:59.567409" 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-08-10T02:10:59.561883" elapsed="0.005554"/>
</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-08-10T02:10:59.568866" 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-08-10T02:10:59.568465" elapsed="0.000547">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-08-10T02:10:59.569230" 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-08-10T02:10:59.568101" elapsed="0.001155"/>
</kw>
<if>
<branch type="IF" condition="${read_volatiles_file} == ${false}">
<return>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:10:59.569499" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:10:59.569331" elapsed="0.000231"/>
</branch>
<status status="PASS" start="2026-08-10T02:10:59.569312" elapsed="0.000274"/>
</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-08-10T02:10:59.569735" 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-08-10T02:10:59.569906" elapsed="0.000020"/>
</kw>
<return>
<value>${volatiles_list}</value>
<status status="NOT RUN" start="2026-08-10T02:10:59.569972" elapsed="0.000016"/>
</return>
<msg time="2026-08-10T02:10:59.572083" 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-08-10T02:10:59.567778" elapsed="0.004334"/>
</kw>
<kw name="Get_From_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.573635" 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-08-10T02:10:59.573351" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:10:59.574093" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:10:59.573832" elapsed="0.000305"/>
</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-08-10T02:10:59.633756" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:10:59.634123" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:10:59.635250" level="FAIL">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209: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-08-10T02:10:59.576250" elapsed="0.060403">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<status status="FAIL" start="2026-08-10T02:10:59.574247" elapsed="0.062601">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209: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-08-10T02:10:59.637308" elapsed="0.000095"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:59.636926" elapsed="0.000576"/>
</branch>
<status status="FAIL" start="2026-08-10T02:10:59.574227" elapsed="0.063329">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209: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-08-10T02:10:59.638799" elapsed="0.000041"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:59.638996" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:10:59.638941" elapsed="0.000114"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:59.638916" elapsed="0.000170"/>
</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-08-10T02:10:59.639287" elapsed="0.000030"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="NOT RUN" start="2026-08-10T02:10:59.639415" elapsed="0.000022"/>
</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-08-10T02:10:59.572518" elapsed="0.067053">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:59.639742" elapsed="0.000023"/>
</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-08-10T02:10:59.428612" elapsed="0.211271">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209: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-08-10T02:10:59.640265" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:59.640016" elapsed="0.000377"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:59.639992" elapsed="0.000435"/>
</if>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-08-10T02:10:59.640474" elapsed="0.000020"/>
</return>
<arg>session=${session}</arg>
<arg>folder=${RESTCONF_MODULES_DIR}</arg>
<arg>verify=False</arg>
<doc>Add arguments sensible for JSON data, return Get_Templated response text.
Optionally, verification against JSON data (may be iterated) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.</doc>
<status status="FAIL" start="2026-08-10T02:10:59.422567" elapsed="0.218051">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<var name="${index}">1</var>
<status status="FAIL" start="2026-08-10T02:10:59.417648" elapsed="0.223063">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="FAIL" start="2026-08-10T02:10:59.417505" elapsed="0.223288">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</for>
<arg>${member_index_list}</arg>
<status status="FAIL" start="2026-08-10T02:10:59.415243" elapsed="0.225680">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<status status="FAIL" start="2026-08-10T02:10:59.414816" elapsed="0.226190">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</branch>
<status status="FAIL" start="2026-08-10T02:10:59.414789" elapsed="0.226261">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209: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-08-10T02:10:59.641476" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:10:59.641142" elapsed="0.000416"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:10:59.641120" elapsed="0.000470"/>
</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-08-10T02:10:59.413314" elapsed="0.228387">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.209: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-08-10T02:11:09.657561" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:09.657192" elapsed="0.000445"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:09.657167" elapsed="0.000498"/>
</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-08-10T02:11:09.659260" 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-08-10T02:11:09.658807" elapsed="0.000482"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.659776" 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-08-10T02:11:09.659469" elapsed="0.000334"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-10T02:11:09.659851" elapsed="0.000036"/>
</return>
<msg time="2026-08-10T02:11:09.660015" 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-08-10T02:11:09.658381" elapsed="0.001659"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.661388" 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-08-10T02:11:09.661067" elapsed="0.000349"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-08-10T02:11:09.661461" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:11:09.661607" 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-08-10T02:11:09.660428" elapsed="0.001204"/>
</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-08-10T02:11:09.751167" 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-08-10T02:11:09.750549" elapsed="0.000719"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-08-10T02:11:09.756710" 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-08-10T02:11:09.756430" elapsed="0.000356">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-08-10T02:11:09.756980" 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-08-10T02:11:09.755895" elapsed="0.001182"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.758818" 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-08-10T02:11:09.758148" elapsed="0.000771"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:11:09.760241" 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-08-10T02:11:09.760594" 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-08-10T02:11:09.759928" elapsed="0.000767"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.762276" 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-08-10T02:11:09.761837" elapsed="0.000570"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.763984" level="INFO">mapping: {}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:09.763719" elapsed="0.000310"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.764498" 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-08-10T02:11:09.764189" elapsed="0.000335"/>
</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-08-10T02:11:09.764856" 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-08-10T02:11:09.765060" 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-08-10T02:11:09.765235" elapsed="0.000020"/>
</kw>
<var name="${key}"/>
<var name="${value}"/>
<status status="NOT RUN" start="2026-08-10T02:11:09.764719" elapsed="0.000573"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="NOT RUN" start="2026-08-10T02:11:09.764577" elapsed="0.000746"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-08-10T02:11:09.765455" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:11:09.765644" level="INFO">${mapping_to_use} = {}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-08-10T02:11:09.763201" elapsed="0.002493"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:09.762570" elapsed="0.003164"/>
</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-08-10T02:11:09.766065" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:09.765792" elapsed="0.000352"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:09.762512" elapsed="0.003686"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.767918" 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-08-10T02:11:09.767171" elapsed="0.000863"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-08-10T02:11:09.768120" elapsed="0.000053"/>
</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-08-10T02:11:09.748288" elapsed="0.020171"/>
</kw>
<msg time="2026-08-10T02:11:09.768722" 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-08-10T02:11:09.697188" elapsed="0.071592"/>
</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-08-10T02:11:09.781186" 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-08-10T02:11:09.793098" 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-08-10T02:11:09.805006" 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-08-10T02:11:09.805203" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:09.805393" 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-08-10T02:11:09.805805" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:09.805659" elapsed="0.000301"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:11:09.805643" elapsed="0.000344"/>
</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-08-10T02:11:09.806128" 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-08-10T02:11:09.806293" elapsed="0.000019"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:09.806481" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-08-10T02:11:09.805613" elapsed="0.000921"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-08-10T02:11:09.805469" elapsed="0.001090"/>
</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-08-10T02:11:09.806701" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-08-10T02:11:09.806775" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:11:09.806893" 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-08-10T02:11:09.692975" elapsed="0.113944"/>
</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-08-10T02:11:09.808407" 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-08-10T02:11:09.807959" elapsed="0.000606">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-08-10T02:11:09.808774" 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-08-10T02:11:09.807619" elapsed="0.001181"/>
</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-08-10T02:11:09.809116" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:09.808871" elapsed="0.000302"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.809929" 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-08-10T02:11:09.809432" elapsed="0.000524"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:09.809196" elapsed="0.000795"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:09.808853" elapsed="0.001160"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.812450" 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-08-10T02:11:09.810162" elapsed="0.002315"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-08-10T02:11:09.812527" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:11:09.812677" 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-08-10T02:11:09.807273" elapsed="0.005429"/>
</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-08-10T02:11:09.814147" 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-08-10T02:11:09.813764" elapsed="0.000525">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-08-10T02:11:09.814533" 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-08-10T02:11:09.813426" elapsed="0.001133"/>
</kw>
<if>
<branch type="IF" condition="${read_volatiles_file} == ${false}">
<return>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:11:09.814770" elapsed="0.000026"/>
</return>
<status status="PASS" start="2026-08-10T02:11:09.814631" elapsed="0.000198"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:09.814612" 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-08-10T02:11:09.814999" 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-08-10T02:11:09.815169" elapsed="0.000021"/>
</kw>
<return>
<value>${volatiles_list}</value>
<status status="NOT RUN" start="2026-08-10T02:11:09.815234" elapsed="0.000015"/>
</return>
<msg time="2026-08-10T02:11:09.817246" 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-08-10T02:11:09.813042" elapsed="0.004231"/>
</kw>
<kw name="Get_From_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.818754" 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-08-10T02:11:09.818481" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:09.819216" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:09.818954" elapsed="0.000314"/>
</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-08-10T02:11:19.383545" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:11:19.385130" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node02mjk283q4ih1bux4rskkyf5v0.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:11:19 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-08-10T02:11:19.385932" 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-08-10T02:11:09.821375" elapsed="9.564627"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:09.819357" elapsed="9.566765"/>
</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-08-10T02:11:19.386694" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.386192" elapsed="0.000656"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:09.819316" elapsed="9.567580"/>
</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-08-10T02:11:19.394889" 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-publickey","client-ident-password"]},{"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":["url","xpath","rollback-on-error","validate","startup","candidate","confirmed-commit","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":"2"}}</msg>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:19.390166" elapsed="0.005330"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:19.389481" elapsed="0.006090"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.389434" elapsed="0.006164"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.398457" level="INFO">200</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:19.395948" elapsed="0.002621"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:19.395654" elapsed="0.002986"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.395637" elapsed="0.003029"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.399527" 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-08-10T02:11:19.398870" elapsed="0.000685"/>
</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-08-10T02:11:19.403274" elapsed="0.000112"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.399658" elapsed="0.003814"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.404755" 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-08-10T02:11:19.404019" elapsed="0.000777"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:19.403499" elapsed="0.001378"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.399639" elapsed="0.005261"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.405655" 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-08-10T02:11:19.405074" elapsed="0.000608"/>
</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-08-10T02:11:19.406474" elapsed="0.000075"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.405783" elapsed="0.000852"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.407928" 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-08-10T02:11:19.407162" elapsed="0.000812"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:19.406661" elapsed="0.001393"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.405765" elapsed="0.002312"/>
</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-08-10T02:11:19.408236" elapsed="0.000812"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-08-10T02:11:19.409897" 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-08-10T02:11:19.409264" elapsed="0.000660"/>
</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-08-10T02:11:19.410121" elapsed="0.002705"/>
</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-08-10T02:11:19.388278" elapsed="0.024642"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-08-10T02:11:19.413103" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:19.412989" elapsed="0.000163"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.412972" elapsed="0.000201"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-08-10T02:11:19.441331" 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-08-10T02:11:19.413318" elapsed="0.028084"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-08-10T02:11:19.441458" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:11:19.441631" 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-08-10T02:11:09.817654" elapsed="9.624004"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:11:19.441723" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:11:19.441878" 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-08-10T02:11:09.671383" elapsed="9.770521"/>
</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-08-10T02:11:19.442240" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.441994" elapsed="0.000398"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.441976" elapsed="0.000442"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-08-10T02:11:19.442452" elapsed="0.000026"/>
</return>
<arg>session=${session}</arg>
<arg>folder=${RESTCONF_MODULES_DIR}</arg>
<arg>verify=False</arg>
<doc>Add arguments sensible for JSON data, return Get_Templated response text.
Optionally, verification against JSON data (may be iterated) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.</doc>
<status status="PASS" start="2026-08-10T02:11:09.665439" elapsed="9.777137"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-08-10T02:11:09.660239" elapsed="9.782379"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-08-10T02:11:09.660097" elapsed="9.782557"/>
</for>
<arg>${member_index_list}</arg>
<status status="PASS" start="2026-08-10T02:11:09.657981" elapsed="9.784729"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:09.657726" elapsed="9.785014"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:09.657709" elapsed="9.785055"/>
</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-08-10T02:11:19.443159" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.442819" elapsed="0.000399"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.442803" elapsed="0.000438"/>
</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-08-10T02:11:09.656665" elapsed="9.786624"/>
</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-08-10T02:10:49.217435" elapsed="30.225937"/>
</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-08-10T02:11:19.446657" 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-08-10T02:11:19.446248" elapsed="0.000435"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.447138" 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-08-10T02:11:19.446844" elapsed="0.000320"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-10T02:11:19.447209" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:11:19.447381" 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-08-10T02:11:19.445842" elapsed="0.001566"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-08-10T02:11:19.448575" level="INFO">${member_ip} = 10.30.170.209</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-08-10T02:11:19.448283" elapsed="0.000319"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:19.449472" level="INFO">index=5
host=10.30.171.177
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-08-10T02:11:19.449574" level="INFO">${current_connection} = index=5
host=10.30.171.177
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-08-10T02:11:19.449302" elapsed="0.000299"/>
</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-08-10T02:11:19.452373" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.452063" elapsed="0.000370"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.452044" elapsed="0.000412"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:19.452713" level="INFO">index=5
host=10.30.171.177
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-08-10T02:11:19.452813" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.177
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-08-10T02:11:19.452603" elapsed="0.000237"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.455378" level="INFO">Attempting to execute command "netstat -pnatu | grep 2550" on remote system "10.30.170.209" 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-08-10T02:11:19.452990" elapsed="0.002440"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:19.456148" 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-08-10T02:11:19.455594" elapsed="0.000581"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.457647" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:19.457788" 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-08-10T02:11:19.456921" elapsed="0.000906"/>
</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-08-10T02:11:19.458052" elapsed="0.000653"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:19.460906" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:19.802748" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:10:49 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:19.460419" elapsed="0.342575"/>
</kw>
<msg time="2026-08-10T02:11:19.803090" 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-08-10T02:11:19.458972" elapsed="0.344231"/>
</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-08-10T02:11:19.456420" elapsed="0.347024"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:19.803991" level="INFO">Executing command 'netstat -pnatu | grep 2550'.</msg>
<msg time="2026-08-10T02:11:19.820843" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-08-10T02:11:19.821080" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:11:19.821177" 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-08-10T02:11:19.803708" elapsed="0.017520"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:19.821638" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.823260" 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-08-10T02:11:19.822553" elapsed="0.000857"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:19.823874" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:19.823585" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.823535" 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-08-10T02:11:19.824490" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:11:19.824213" elapsed="0.000408"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.824180" elapsed="0.000492"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:19.824745" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-08-10T02:11:19.893380" elapsed="0.000356"/>
</kw>
<msg time="2026-08-10T02:11:19.893834" 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-08-10T02:11:19.891507" elapsed="0.002452"/>
</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-08-10T02:11:19.894157" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:19.894345" 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-08-10T02:11:19.825262" elapsed="0.069190"/>
</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-08-10T02:11:19.451510" elapsed="0.443034"/>
</kw>
<msg time="2026-08-10T02:11:19.894598" 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-08-10T02:11:19.450841" elapsed="0.443816"/>
</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-08-10T02:11:19.450264" elapsed="0.444470"/>
</kw>
<msg time="2026-08-10T02:11:19.894776" 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-08-10T02:11:19.449759" elapsed="0.445072"/>
</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-08-10T02:11:19.898279" elapsed="0.000160"/>
</kw>
<msg time="2026-08-10T02:11:19.898483" 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-08-10T02:11:19.897787" elapsed="0.000756"/>
</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-08-10T02:11:19.898699" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:19.898858" elapsed="0.000019"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:11:19.895198" elapsed="0.003739"/>
</kw>
<msg time="2026-08-10T02:11:19.899030" 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-08-10T02:11:19.448818" elapsed="0.450236"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.899537" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:19.899263" elapsed="0.000315"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:11:19.899625" elapsed="0.000033"/>
</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-08-10T02:11:19.447851" elapsed="0.451903"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-08-10T02:11:19.447676" elapsed="0.452115"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-08-10T02:11:19.447532" elapsed="0.452294"/>
</for>
<arg>command=netstat -pnatu | grep 2550</arg>
<doc>Cycle through indices (or all), run command on each.</doc>
<status status="PASS" start="2026-08-10T02:11:19.443649" elapsed="0.456230"/>
</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-08-10T02:10:48.817182" elapsed="31.082744"/>
</kw>
<doc>Stop and Start controller.</doc>
<status status="PASS" start="2026-08-10T02:10:39.823755" elapsed="40.076289"/>
</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-08-10T02:11:19.917774" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:19.918834" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0betrc7ibj0851jcdopl66sv1g12.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:11: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': '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-08-10T02:11:19.919129" 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-08-10T02:11:19.901759" elapsed="0.017430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.924945" 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-08-10T02:11:19.919733" elapsed="0.005309"/>
</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-08-10T02:11:19.928644" elapsed="0.003410"/>
</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-08-10T02:11:19.932250" elapsed="0.002681"/>
</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-08-10T02:11:19.935125" elapsed="0.002653"/>
</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-08-10T02:11:19.937972" elapsed="0.002717"/>
</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-08-10T02:11:19.940881" elapsed="0.002665"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.944179" 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-08-10T02:11:19.943742" elapsed="0.000464"/>
</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-08-10T02:11:19.944547" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.944283" elapsed="0.000321"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.944263" elapsed="0.000366"/>
</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-08-10T02:11:19.944917" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.944683" elapsed="0.000290"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.944668" elapsed="0.000328"/>
</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-08-10T02:11:19.945279" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.945049" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.945033" elapsed="0.000342"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:11:19.928400" elapsed="0.016999"/>
</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-08-10T02:11:19.945765" elapsed="0.002690"/>
</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-08-10T02:11:19.948648" elapsed="0.002664"/>
</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-08-10T02:11:19.951523" elapsed="0.002639"/>
</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-08-10T02:11:19.954422" elapsed="0.002642"/>
</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-08-10T02:11:19.957254" elapsed="0.002680"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.960618" 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-08-10T02:11:19.960157" elapsed="0.000489"/>
</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-08-10T02:11:19.960955" elapsed="0.002679"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:19.960717" elapsed="0.002958"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.960699" elapsed="0.003001"/>
</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-08-10T02:11:19.963999" elapsed="0.002674"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:19.963756" elapsed="0.002964"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.963740" elapsed="0.003004"/>
</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-08-10T02:11:19.967044" elapsed="0.002643"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:19.966800" elapsed="0.002928"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.966784" elapsed="0.002969"/>
</if>
<var name="${switch}">2</var>
<status status="PASS" start="2026-08-10T02:11:19.945608" elapsed="0.024168"/>
</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-08-10T02:11:19.970149" elapsed="0.002788"/>
</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-08-10T02:11:19.973128" elapsed="0.002668"/>
</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-08-10T02:11:19.975985" elapsed="0.002644"/>
</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-08-10T02:11:19.978853" elapsed="0.002667"/>
</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-08-10T02:11:19.981711" elapsed="0.002687"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:11:19.985021" 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-08-10T02:11:19.984588" elapsed="0.000460"/>
</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-08-10T02:11:19.985372" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.985117" elapsed="0.000312"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.985099" elapsed="0.000353"/>
</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-08-10T02:11:19.985737" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.985506" elapsed="0.000286"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.985491" elapsed="0.000324"/>
</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-08-10T02:11:19.986104" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:19.985867" elapsed="0.000292"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:19.985852" elapsed="0.000329"/>
</if>
<var name="${switch}">3</var>
<status status="PASS" start="2026-08-10T02:11:19.969984" elapsed="0.016219"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:11:19.925119" elapsed="0.061112"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="PASS" start="2026-08-10T02:11:19.901430" elapsed="0.084858"/>
</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-08-10T02:11:19.900712" elapsed="0.085626"/>
</kw>
<doc>Check Linear Topology.</doc>
<status status="PASS" start="2026-08-10T02:11:19.900239" elapsed="0.086227"/>
</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-08-10T02:11:20.128022" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:20.130178" level="INFO">GET Response : url=http://10.30.170.209: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":52002,"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":9,"nanosecond":471000000}},"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":9,"nanosecond":471000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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-08-10T02:11:20.130699" 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-08-10T02:11:19.988030" elapsed="0.142730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:20.136263" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":52002,"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":9,"nanosecond":471000000}},"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":9,"nanosecond":471000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":"15","byte-count":"1155","duration":{"second":9,"nanosecond":351000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"25","active-flows":100,"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":"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-08-10T02:11:19.472Z"},"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:c0:d9:25:02: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":64,"nanosecond":993000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d6:e3:e1:10:f3:00","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":"17","received":"17"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":65,"nanosecond":4000000},"bytes":{"transmitted":"1391","received":"1391"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:70:47:d6:9c:9e","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":"17","received":"10"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":65,"nanosecond":4000000},"bytes":{"transmitted":"1391","received":"796"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":61,"nanosecond":883000000},"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":61,"nanosecond":882000000},"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":61,"nanosecond":882000000},"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":64,"nanosecond":720000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":61,"nanosecond":882000000},"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":61,"nanosecond":400000000},"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":64,"nanosecond":719000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":403000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":402000000},"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":64,"nanosecond":402000000},"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":63,"nanosecond":904000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":393000000},"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":63,"nanosecond":896000000},"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":63,"nanosecond":896000000},"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":63,"nanosecond":896000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":392000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":63,"nanosecond":895000000},"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":63,"nanosecond":895000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":392000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":894000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":891000000},"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":63,"nanosecond":891000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":891000000},"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":63,"nanosecond":891000000},"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":63,"nanosecond":891000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":404000000},"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":63,"nanosecond":404000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":404000000},"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":63,"nanosecond":404000000},"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":63,"nanosecond":402000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":402000000},"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":63,"nanosecond":402000000},"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":63,"nanosecond":402000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":401000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":401000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":62,"nanosecond":903000000},"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":62,"nanosecond":900000000},"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":61,"nanosecond":385000000},"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":62,"nanosecond":900000000},"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":62,"nanosecond":900000000},"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":62,"nanosecond":900000000},"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":62,"nanosecond":900000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":898000000},"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":61,"nanosecond":385000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":61,"nanosecond":385000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":61,"nanosecond":884000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":385000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:11:19.548Z"}},{"id":"openflow:1","flow-node-inventory:port-number":51996,"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":"14","byte-count":"1085","duration":{"second":9,"nanosecond":353000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"24","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":"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-08-10T02:11:19.450Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:0c:9d:31:4a:a7","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":"17","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":65,"nanosecond":3000000},"bytes":{"transmitted":"1391","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:db:75:2c:3f:45","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":64,"nanosecond":999000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a2:44:ce:79:68:eb","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":"17"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":65,"nanosecond":3000000},"bytes":{"transmitted":"1321","received":"1391"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":64,"nanosecond":702000000},"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":64,"nanosecond":701000000},"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":64,"nanosecond":701000000},"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":64,"nanosecond":701000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":701000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":701000000},"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":64,"nanosecond":701000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":700000000},"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":64,"nanosecond":700000000},"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":64,"nanosecond":700000000},"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":64,"nanosecond":700000000},"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":64,"nanosecond":700000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":384000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":384000000},"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":64,"nanosecond":383000000},"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":64,"nanosecond":381000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":381000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":381000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":381000000},"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":64,"nanosecond":381000000},"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":64,"nanosecond":381000000},"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":64,"nanosecond":381000000},"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":64,"nanosecond":381000000},"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":63,"nanosecond":883000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":882000000},"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":63,"nanosecond":882000000},"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":63,"nanosecond":882000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":882000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":882000000},"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":63,"nanosecond":881000000},"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":63,"nanosecond":881000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":881000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":881000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":880000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":880000000},"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":63,"nanosecond":880000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":880000000},"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":63,"nanosecond":880000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":878000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":875000000},"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":63,"nanosecond":875000000},"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":63,"nanosecond":875000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":875000000},"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":63,"nanosecond":875000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":874000000},"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":63,"nanosecond":874000000},"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":63,"nanosecond":874000000},"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":63,"nanosecond":874000000},"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":63,"nanosecond":874000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":62,"nanosecond":882000000},"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":62,"nanosecond":882000000},"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":61,"nanosecond":373000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":61,"nanosecond":373000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":61,"nanosecond":373000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":380000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:11:19.546Z"}},{"id":"openflow:2","flow-node-inventory:port-number":52016,"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":9,"nanosecond":515000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":"1790","duration":{"second":9,"nanosecond":343000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"39","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-08-10T02:11:19.449Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:f6:7e:6e:31:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"17","received":"17"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":64,"nanosecond":984000000},"bytes":{"transmitted":"1391","received":"1391"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:26:96:e2:a9:46","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":64,"nanosecond":973000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:da:5c:4a:47:8e","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":"17","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":64,"nanosecond":984000000},"bytes":{"transmitted":"1391","received":"1321"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"3e:a0:f7:c4:e7:45","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":"17","received":"10"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":64,"nanosecond":984000000},"bytes":{"transmitted":"1391","received":"796"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":64,"nanosecond":711000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":61,"nanosecond":873000000},"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":61,"nanosecond":392000000},"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":64,"nanosecond":710000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":709000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":63,"nanosecond":896000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":896000000},"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":63,"nanosecond":895000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":890000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":392000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":61,"nanosecond":380000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":61,"nanosecond":380000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":61,"nanosecond":380000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":391000000},"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":62,"nanosecond":391000000},"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":62,"nanosecond":391000000},"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":62,"nanosecond":391000000},"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":62,"nanosecond":391000000},"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":61,"nanosecond":876000000},"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":61,"nanosecond":876000000},"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":61,"nanosecond":876000000},"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":61,"nanosecond":876000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:11:19.548Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:20.131206" elapsed="0.011287"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:11:20.145717" level="INFO">Item found from container 300 times.</msg>
<msg time="2026-08-10T02:11:20.145802" 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-08-10T02:11:20.142687" elapsed="0.003140"/>
</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-08-10T02:11:20.146024" elapsed="0.000319"/>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-08-10T02:11:19.987709" elapsed="0.158714"/>
</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-08-10T02:11:19.987160" elapsed="0.159311"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-08-10T02:11:19.986641" elapsed="0.159941"/>
</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-08-10T02:11:20.215654" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:20.217773" level="INFO">GET Response : url=http://10.30.170.209: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":52002,"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":9,"nanosecond":471000000}},"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":9,"nanosecond":471000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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-08-10T02:11:20.218231" 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-08-10T02:11:20.147652" elapsed="0.070640"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:20.224105" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":52002,"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":9,"nanosecond":471000000}},"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":9,"nanosecond":471000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":450000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":411000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":"15","byte-count":"1155","duration":{"second":9,"nanosecond":351000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"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":9,"nanosecond":412000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"25","active-flows":100,"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":"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-08-10T02:11:19.472Z"},"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:c0:d9:25:02: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":64,"nanosecond":993000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d6:e3:e1:10:f3:00","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":"17","received":"17"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":65,"nanosecond":4000000},"bytes":{"transmitted":"1391","received":"1391"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:70:47:d6:9c:9e","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":"17","received":"10"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":65,"nanosecond":4000000},"bytes":{"transmitted":"1391","received":"796"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":61,"nanosecond":883000000},"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":61,"nanosecond":882000000},"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":61,"nanosecond":882000000},"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":64,"nanosecond":720000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":61,"nanosecond":882000000},"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":61,"nanosecond":400000000},"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":64,"nanosecond":719000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":64,"nanosecond":719000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":403000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":393000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":403000000},"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":64,"nanosecond":402000000},"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":64,"nanosecond":402000000},"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":63,"nanosecond":904000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":393000000},"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":63,"nanosecond":896000000},"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":63,"nanosecond":896000000},"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":63,"nanosecond":896000000},"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":61,"nanosecond":393000000},"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":61,"nanosecond":392000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":63,"nanosecond":895000000},"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":63,"nanosecond":895000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":392000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":392000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":392000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":894000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":894000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":894000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":891000000},"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":63,"nanosecond":891000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":891000000},"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":63,"nanosecond":891000000},"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":63,"nanosecond":891000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":404000000},"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":63,"nanosecond":404000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":404000000},"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":63,"nanosecond":404000000},"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":63,"nanosecond":402000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":402000000},"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":63,"nanosecond":402000000},"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":63,"nanosecond":402000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":401000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":401000000},"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":61,"nanosecond":385000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":63,"nanosecond":401000000},"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":62,"nanosecond":903000000},"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":62,"nanosecond":900000000},"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":61,"nanosecond":385000000},"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":62,"nanosecond":900000000},"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":62,"nanosecond":900000000},"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":62,"nanosecond":900000000},"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":62,"nanosecond":900000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":899000000},"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":62,"nanosecond":898000000},"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":61,"nanosecond":385000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":61,"nanosecond":385000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":897000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":62,"nanosecond":401000000},"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":61,"nanosecond":884000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":385000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"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":61,"nanosecond":883000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:11:19.548Z"}},{"id":"openflow:1","flow-node-inventory:port-number":51996,"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":478000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":419000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":"14","byte-count":"1085","duration":{"second":9,"nanosecond":353000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"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":9,"nanosecond":418000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"24","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":"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-08-10T02:11:19.450Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:0c:9d:31:4a:a7","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":"17","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":65,"nanosecond":3000000},"bytes":{"transmitted":"1391","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:db:75:2c:3f:45","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":64,"nanosecond":999000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"a2:44:ce:79:68:eb","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":"17"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":65,"nanosecond":3000000},"bytes":{"transmitted":"1321","received":"1391"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":64,"nanosecond":702000000},"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":64,"nanosecond":701000000},"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":64,"nanosecond":701000000},"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":64,"nanosecond":701000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":701000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":701000000},"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":64,"nanosecond":701000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":700000000},"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":64,"nanosecond":700000000},"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":64,"nanosecond":700000000},"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":64,"nanosecond":700000000},"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":64,"nanosecond":700000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":384000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":384000000},"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":64,"nanosecond":383000000},"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":64,"nanosecond":381000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":381000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":381000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":64,"nanosecond":381000000},"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":64,"nanosecond":381000000},"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":64,"nanosecond":381000000},"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":64,"nanosecond":381000000},"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":64,"nanosecond":381000000},"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":63,"nanosecond":883000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":882000000},"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":63,"nanosecond":882000000},"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":63,"nanosecond":882000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":882000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":882000000},"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":63,"nanosecond":881000000},"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":63,"nanosecond":881000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":881000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":881000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":880000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":880000000},"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":63,"nanosecond":880000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":880000000},"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":63,"nanosecond":880000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":878000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":878000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":876000000},"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":63,"nanosecond":875000000},"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":63,"nanosecond":875000000},"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":63,"nanosecond":875000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":875000000},"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":63,"nanosecond":875000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":874000000},"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":63,"nanosecond":874000000},"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":63,"nanosecond":874000000},"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":63,"nanosecond":874000000},"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":63,"nanosecond":874000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":61,"nanosecond":373000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":63,"nanosecond":382000000},"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":62,"nanosecond":882000000},"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":62,"nanosecond":882000000},"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":61,"nanosecond":373000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":881000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":61,"nanosecond":373000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":61,"nanosecond":373000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":880000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":381000000},"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":62,"nanosecond":380000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":373000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"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":61,"nanosecond":864000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:11:19.546Z"}},{"id":"openflow:2","flow-node-inventory:port-number":52016,"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":9,"nanosecond":515000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":476000000}},"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":9,"nanosecond":477000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":475000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":401000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":"1790","duration":{"second":9,"nanosecond":343000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":397000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"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":9,"nanosecond":394000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"39","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-08-10T02:11:19.449Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:f6:7e:6e:31:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"17","received":"17"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":64,"nanosecond":984000000},"bytes":{"transmitted":"1391","received":"1391"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:26:96:e2:a9:46","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":64,"nanosecond":973000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:da:5c:4a:47:8e","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":"17","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":64,"nanosecond":984000000},"bytes":{"transmitted":"1391","received":"1321"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"3e:a0:f7:c4:e7:45","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":"17","received":"10"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":64,"nanosecond":984000000},"bytes":{"transmitted":"1391","received":"796"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":64,"nanosecond":711000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":61,"nanosecond":873000000},"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":61,"nanosecond":392000000},"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":64,"nanosecond":710000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":710000000},"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":64,"nanosecond":709000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":64,"nanosecond":394000000},"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":63,"nanosecond":896000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":896000000},"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":63,"nanosecond":895000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":895000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":61,"nanosecond":391000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":893000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":892000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":890000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":63,"nanosecond":890000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":888000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":63,"nanosecond":887000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":392000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":61,"nanosecond":380000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":63,"nanosecond":391000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":61,"nanosecond":380000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":61,"nanosecond":380000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":61,"nanosecond":380000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":891000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":392000000},"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":62,"nanosecond":391000000},"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":62,"nanosecond":391000000},"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":62,"nanosecond":391000000},"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":62,"nanosecond":391000000},"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":62,"nanosecond":391000000},"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":61,"nanosecond":876000000},"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":61,"nanosecond":876000000},"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":61,"nanosecond":876000000},"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":61,"nanosecond":876000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":380000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"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":61,"nanosecond":874000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:11:19.548Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:20.218807" elapsed="0.009807"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:11:20.231863" level="INFO">Item found from container 594 times.</msg>
<msg time="2026-08-10T02:11:20.231947" 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-08-10T02:11:20.228806" elapsed="0.003167"/>
</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-08-10T02:11:20.232168" elapsed="0.000334"/>
</kw>
<arg>${less_groups}</arg>
<doc>Check number of groups in the inventory.</doc>
<status status="PASS" start="2026-08-10T02:11:20.147298" elapsed="0.085268"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-08-10T02:11:20.146762" elapsed="0.085907"/>
</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-08-10T02:11:20.233993" elapsed="0.000139"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:20.233758" elapsed="0.000412"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:20.233736" elapsed="0.000459"/>
</if>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:20.234648" 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-08-10T02:11:20.234388" elapsed="0.000286"/>
</kw>
<kw name="Send Mininet Command" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-08-10T02:11:20.235555" elapsed="0.000135"/>
</kw>
<status status="PASS" start="2026-08-10T02:11:20.235311" elapsed="0.000416"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:20.235294" elapsed="0.000457"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:11:20.239297" 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-08-10T02:11:20.235886" elapsed="0.003487"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:11:20.338914" level="INFO">*** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=14 byte_count=1085 flow_count=100
*** s2 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=24 byte_count=1860 flow_count=100
*** s3 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=15 byte_count=1155 flow_count=100
mininet&gt;</msg>
<msg time="2026-08-10T02:11:20.339018" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=14 byte_count=1085 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-08-10T02:11:20.239533" elapsed="0.099512"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:11:20.339124" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:11:20.339293" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=14 byte_count=1085 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-08-10T02:11:20.235012" elapsed="0.104309"/>
</kw>
<kw name="Get Regexp Matches" owner="String">
<msg time="2026-08-10T02:11:20.339756" 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-08-10T02:11:20.339504" elapsed="0.000278"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:11:20.340322" 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-08-10T02:11:20.339939" elapsed="0.000430"/>
</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-08-10T02:11:20.340567" elapsed="0.000751"/>
</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-08-10T02:11:20.233429" elapsed="0.107978"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-08-10T02:11:20.232848" elapsed="0.108667"/>
</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-08-10T02:11:20.348299" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:20.348078" elapsed="0.000295"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:20.348060" elapsed="0.000338"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:11:20.350112" 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-08-10T02:11:20.348534" elapsed="0.001647"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:11:20.605170" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 5 links
.....
*** Stopping 3 switches
s1 s2 s3 
*** Stopping 3 hosts
h1 h2 h3 
*** Done
completed in 66.299 seconds
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:20.350338" elapsed="0.255147"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:20.605919" elapsed="0.000348"/>
</kw>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-08-10T02:11:20.346122" elapsed="0.260284"/>
</kw>
<doc>Stop Mininet.</doc>
<status status="PASS" start="2026-08-10T02:11:20.341694" elapsed="0.264941"/>
</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-08-10T02:11:20.619245" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:20.619618" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '1245'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:11:20.619957" 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-08-10T02:11:20.609301" elapsed="0.010721"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:20.626502" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:20.620587" elapsed="0.006041"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-08-10T02:11:20.633669" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-08-10T02:11:20.631006" elapsed="0.002760">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-08-10T02:11:20.630821" elapsed="0.003033">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-08-10T02:11:20.626756" elapsed="0.007200">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-08-10T02:11:20.608700" elapsed="0.025376">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:21.645580" level="INFO">GET Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:21.645859" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:11:21.646015" 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-08-10T02:11:21.636207" elapsed="0.009845"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:21.650368" 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-08-10T02:11:21.646413" elapsed="0.004028"/>
</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-08-10T02:11:21.653875" elapsed="0.003374"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-08-10T02:11:21.653627" elapsed="0.003681"/>
</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-08-10T02:11:21.657693" elapsed="0.003345"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-08-10T02:11:21.657459" elapsed="0.003639"/>
</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-08-10T02:11:21.661382" elapsed="0.002354"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-08-10T02:11:21.661198" elapsed="0.002579"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-08-10T02:11:21.650525" elapsed="0.013282"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="PASS" start="2026-08-10T02:11:21.635161" elapsed="0.028711"/>
</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-08-10T02:11:20.607656" elapsed="1.056264"/>
</kw>
<doc>Check no switches in topology.</doc>
<status status="PASS" start="2026-08-10T02:11:20.606987" elapsed="1.057070"/>
</test>
<kw name="Final Phase" type="TEARDOWN">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:21.665088" 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-08-10T02:11:21.664826" elapsed="0.000288"/>
</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-08-10T02:11:21.667264" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:21.666935" elapsed="0.000386"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:21.666908" elapsed="0.000460"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:21.667696" 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-08-10T02:11:21.667797" 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-08-10T02:11:21.667526" elapsed="0.000351"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:21.668453" level="INFO">Attempting to execute command "sudo iptables -v -F" on remote system "10.30.170.209" 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-08-10T02:11:21.668048" elapsed="0.000453"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:21.669084" 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-08-10T02:11:21.668696" elapsed="0.000415"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:21.669952" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:21.670029" 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-08-10T02:11:21.669690" elapsed="0.000363"/>
</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-08-10T02:11:21.670210" elapsed="0.000341"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:21.671403" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:21.994162" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:19 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:21.671070" elapsed="0.323232"/>
</kw>
<msg time="2026-08-10T02:11:21.994404" 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-08-10T02:11:21.670717" elapsed="0.323788"/>
</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-08-10T02:11:21.669327" elapsed="0.325286"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:21.995044" level="INFO">Executing command 'sudo iptables -v -F'.</msg>
<msg time="2026-08-10T02:11:22.039835" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:11:22.040086" 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-08-10T02:11:22.040188" 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-08-10T02:11:21.994823" elapsed="0.045416"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:22.040661" elapsed="0.000505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:22.042409" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:22.041690" elapsed="0.000818"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:22.042958" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:22.042675" elapsed="0.000394"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:22.042627" elapsed="0.000493"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:22.043512" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-08-10T02:11:22.043236" elapsed="0.000408"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:22.043203" elapsed="0.000496"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:22.043773" 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-08-10T02:11:22.048629" elapsed="0.000449"/>
</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-08-10T02:11:22.049309" elapsed="0.000240"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:22.049754" 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-08-10T02:11:22.044494" elapsed="0.005493"/>
</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-08-10T02:11:21.666446" elapsed="0.383666"/>
</kw>
<msg time="2026-08-10T02:11:22.050188" 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-08-10T02:11:21.665825" elapsed="0.384444"/>
</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-08-10T02:11:21.665311" elapsed="0.385173"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:23.927701" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0betrc7ibj0851jcdopl66sv1g12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:23.927875" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:11:22.051190" elapsed="1.876827"/>
</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-08-10T02:11:22.050707" elapsed="1.877454"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:23.928822" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:11:23.928617" elapsed="0.000879"/>
</kw>
<doc>Delete all sessions.</doc>
<status status="PASS" start="2026-08-10T02:11:21.664603" elapsed="2.265029"/>
</kw>
<doc>Test reconciliation of chained groups and flows after switch connection and controller are restarted.</doc>
<status status="PASS" start="2026-08-10T02:10:07.562321" elapsed="76.367384"/>
</suite>
<status status="PASS" start="2026-08-10T02:10:07.560911" elapsed="76.371236"/>
</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-08-10T02:11:23.975089" 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-08-10T02:11:23.974756" elapsed="0.000361"/>
</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-08-10T02:11:23.976339" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:23.976061" elapsed="0.000358"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:23.976037" elapsed="0.000408"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:23.976728" 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-08-10T02:11:23.976830" 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-08-10T02:11:23.976568" elapsed="0.000289"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:23.977381" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.209" 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-08-10T02:11:23.976980" elapsed="0.000448"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:23.977923" 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-08-10T02:11:23.977557" elapsed="0.000391"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:23.978791" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:23.978868" 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-08-10T02:11:23.978513" elapsed="0.000378"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:11:23.979022" elapsed="0.000343"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:23.980152" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:24.376378" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:21 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:23.979834" elapsed="0.396650"/>
</kw>
<msg time="2026-08-10T02:11:24.376551" 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-08-10T02:11:23.979507" elapsed="0.397114"/>
</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-08-10T02:11:23.978133" elapsed="0.398592"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:24.377153" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-08-10T02:11:24.400447" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:11:24.400714" level="INFO">${stdout} = 4279</msg>
<msg time="2026-08-10T02:11:24.400810" 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-08-10T02:11:24.376955" elapsed="0.023906"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:24.401164" elapsed="0.000499"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:24.402592" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:24.401967" elapsed="0.000720"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:24.403155" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:24.402871" elapsed="0.000392"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:24.402823" elapsed="0.000490"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:24.403709" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:11:24.403470" elapsed="0.000372"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:24.403436" elapsed="0.000458"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:24.403968" 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-08-10T02:11:24.408851" elapsed="0.000531"/>
</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-08-10T02:11:24.409521" elapsed="0.000153"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:24.409793" elapsed="0.000096"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:11:24.404635" elapsed="0.005305"/>
</kw>
<msg time="2026-08-10T02:11:24.410057" level="INFO">${output} = 4279</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-08-10T02:11:23.975462" elapsed="0.434620"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-08-10T02:11:24.410462" level="INFO">${pid} = 4279</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-08-10T02:11:24.410234" elapsed="0.000253"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-08-10T02:11:24.410534" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:11:24.410684" level="INFO">${output} = 4279</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-08-10T02:11:23.972828" elapsed="0.437880"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:24.411092" level="INFO">4279</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:24.410849" elapsed="0.000286"/>
</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-08-10T02:11:24.413646" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:24.413411" elapsed="0.000291"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:24.413392" elapsed="0.000333"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:24.413975" 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-08-10T02:11:24.414075" 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-08-10T02:11:24.413844" elapsed="0.000258"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:24.414617" level="INFO">Attempting to execute command "netstat -na | grep 6633" on remote system "10.30.170.209" 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-08-10T02:11:24.414222" elapsed="0.000441"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:24.415146" 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-08-10T02:11:24.414788" elapsed="0.000384"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:24.416014" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:24.416097" 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-08-10T02:11:24.415736" elapsed="0.000385"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:11:24.416246" elapsed="0.000333"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:24.417445" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:24.796984" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:24 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:24.417116" elapsed="0.379988"/>
</kw>
<msg time="2026-08-10T02:11:24.797178" 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-08-10T02:11:24.416785" elapsed="0.380474"/>
</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-08-10T02:11:24.415376" elapsed="0.382004"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:24.797755" level="INFO">Executing command 'netstat -na | grep 6633'.</msg>
<msg time="2026-08-10T02:11:24.811198" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-08-10T02:11:24.811379" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:11:24.811444" 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-08-10T02:11:24.797548" elapsed="0.013929"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:24.811669" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:24.812937" 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-08-10T02:11:24.812275" elapsed="0.000761"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:24.813535" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:24.813215" elapsed="0.000425"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:24.813167" elapsed="0.000523"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:24.814048" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:11:24.813809" elapsed="0.000368"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:24.813775" elapsed="0.000455"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:24.814305" elapsed="0.000065"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:11:24.819183" elapsed="0.000741"/>
</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-08-10T02:11:24.820225" elapsed="0.000444"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:24.820944" elapsed="0.000221"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:11:24.814958" elapsed="0.006269"/>
</kw>
<msg time="2026-08-10T02:11:24.821371" 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-08-10T02:11:24.411473" elapsed="0.409925"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:24.821788" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:24.821544" elapsed="0.000285"/>
</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-08-10T02:11:23.969494" elapsed="0.852393"/>
</kw>
<kw name="Get Process ID Based On Regex On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:24.827258" 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-08-10T02:11:24.826950" elapsed="0.000334"/>
</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-08-10T02:11:24.828449" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:24.828194" elapsed="0.000311"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:24.828176" elapsed="0.000352"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:24.828821" 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-08-10T02:11:24.828921" 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-08-10T02:11:24.828684" elapsed="0.000334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:24.829551" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.209" 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-08-10T02:11:24.829145" elapsed="0.000454"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:24.830089" 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-08-10T02:11:24.829727" elapsed="0.000388"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:24.830955" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:24.831033" 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-08-10T02:11:24.830684" 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-08-10T02:11:24.831184" elapsed="0.000335"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:24.832288" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:25.200520" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:24 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:24.831981" elapsed="0.368624"/>
</kw>
<msg time="2026-08-10T02:11:25.200665" 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-08-10T02:11:24.831657" elapsed="0.369064"/>
</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-08-10T02:11:24.830300" elapsed="0.370508"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:25.201138" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-08-10T02:11:25.224130" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:11:25.224448" level="INFO">${stdout} = 4279</msg>
<msg time="2026-08-10T02:11:25.224547" 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-08-10T02:11:25.200958" elapsed="0.023640"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:25.224895" elapsed="0.000483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:25.226246" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:25.225679" elapsed="0.000695"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:25.226802" elapsed="0.000035"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:25.226535" elapsed="0.000369"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:25.226492" elapsed="0.000460"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:25.227298" elapsed="0.000094"/>
</return>
<status status="PASS" start="2026-08-10T02:11:25.227066" elapsed="0.000404"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:25.227033" elapsed="0.000491"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:25.227598" 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-08-10T02:11:25.232443" elapsed="0.000710"/>
</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-08-10T02:11:25.233309" elapsed="0.000168"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:25.233594" elapsed="0.000095"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:11:25.228197" elapsed="0.005542"/>
</kw>
<msg time="2026-08-10T02:11:25.233856" level="INFO">${output} = 4279</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-08-10T02:11:24.827619" elapsed="0.406262"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-08-10T02:11:25.234302" level="INFO">${pid} = 4279</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-08-10T02:11:25.234091" elapsed="0.000237"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-08-10T02:11:25.234395" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:11:25.234548" level="INFO">${controller_pid} = 4279</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-08-10T02:11:24.825051" elapsed="0.409521"/>
</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-08-10T02:11:25.234718" elapsed="0.000319"/>
</kw>
<kw name="Get Process Thread Count On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:25.237472" level="INFO">${cmd} = ps --no-headers -o nlwp 4279</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-08-10T02:11:25.237157" elapsed="0.000341"/>
</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-08-10T02:11:25.238647" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:25.238411" elapsed="0.000291"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:25.238393" elapsed="0.000332"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:25.238973" 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-08-10T02:11:25.239072" 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-08-10T02:11:25.238843" elapsed="0.000255"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:25.239614" level="INFO">Attempting to execute command "ps --no-headers -o nlwp 4279" on remote system "10.30.170.209" 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-08-10T02:11:25.239218" elapsed="0.000442"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:25.240138" 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-08-10T02:11:25.239785" elapsed="0.000379"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:25.241153" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:25.241231" 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-08-10T02:11:25.240889" 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-08-10T02:11:25.241401" elapsed="0.000315"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:25.242510" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:25.580144" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:25 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:25.242182" elapsed="0.338051"/>
</kw>
<msg time="2026-08-10T02:11:25.580294" 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-08-10T02:11:25.241856" elapsed="0.338513"/>
</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-08-10T02:11:25.240527" elapsed="0.339929"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:25.580781" level="INFO">Executing command 'ps --no-headers -o nlwp 4279'.</msg>
<msg time="2026-08-10T02:11:25.593589" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:11:25.593825" level="INFO">${stdout} =  162</msg>
<msg time="2026-08-10T02:11:25.593921" 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-08-10T02:11:25.580604" elapsed="0.013367"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:25.594267" elapsed="0.000501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:25.595705" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:25.595063" 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-08-10T02:11:25.596213" elapsed="0.000035"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:25.595947" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:25.595904" elapsed="0.000589"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:25.596858" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:11:25.596615" elapsed="0.000375"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:25.596580" elapsed="0.000463"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:25.597116" elapsed="0.000029"/>
</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-08-10T02:11:25.601293" elapsed="0.000464"/>
</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-08-10T02:11:25.601944" elapsed="0.000205"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:25.602313" 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-08-10T02:11:25.597753" elapsed="0.004794"/>
</kw>
<msg time="2026-08-10T02:11:25.602713" level="INFO">${output} =  162</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-08-10T02:11:25.237807" elapsed="0.364940"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-08-10T02:11:25.603236" level="INFO">${thread_count} =  162</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-08-10T02:11:25.602953" elapsed="0.000318"/>
</kw>
<return>
<value>${thread_count}</value>
<status status="PASS" start="2026-08-10T02:11:25.603360" elapsed="0.000072"/>
</return>
<msg time="2026-08-10T02:11:25.603614" level="INFO">${starting_thread_count} =  162</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-08-10T02:11:25.235226" elapsed="0.368423"/>
</kw>
<kw name="Repeat Keyword" owner="BuiltIn">
<msg time="2026-08-10T02:11:25.604314" level="INFO">Repeating keyword, round 1/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.605039" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.604528" elapsed="0.002678"/>
</kw>
<msg time="2026-08-10T02:11:25.607289" level="INFO">Repeating keyword, round 2/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.608095" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.607598" elapsed="0.002648"/>
</kw>
<msg time="2026-08-10T02:11:25.610367" level="INFO">Repeating keyword, round 3/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.611100" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.610557" elapsed="0.001344"/>
</kw>
<msg time="2026-08-10T02:11:25.611980" level="INFO">Repeating keyword, round 4/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.612676" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.612167" elapsed="0.002351"/>
</kw>
<msg time="2026-08-10T02:11:25.614613" level="INFO">Repeating keyword, round 5/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.615341" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.614800" elapsed="0.001211"/>
</kw>
<msg time="2026-08-10T02:11:25.616098" level="INFO">Repeating keyword, round 6/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.616613" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.616248" elapsed="0.001247"/>
</kw>
<msg time="2026-08-10T02:11:25.617550" level="INFO">Repeating keyword, round 7/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.618014" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.617682" elapsed="0.001679"/>
</kw>
<msg time="2026-08-10T02:11:25.619433" level="INFO">Repeating keyword, round 8/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.620006" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.619603" elapsed="0.000938"/>
</kw>
<msg time="2026-08-10T02:11:25.620598" level="INFO">Repeating keyword, round 9/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.621065" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.620731" elapsed="0.001671"/>
</kw>
<msg time="2026-08-10T02:11:25.622468" level="INFO">Repeating keyword, round 10/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.622972" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.622601" elapsed="0.000932"/>
</kw>
<msg time="2026-08-10T02:11:25.623633" level="INFO">Repeating keyword, round 11/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.624401" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.623812" elapsed="0.001956"/>
</kw>
<msg time="2026-08-10T02:11:25.625864" level="INFO">Repeating keyword, round 12/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.626470" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.626008" elapsed="0.000948"/>
</kw>
<msg time="2026-08-10T02:11:25.627012" level="INFO">Repeating keyword, round 13/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.627498" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.627145" elapsed="0.001740"/>
</kw>
<msg time="2026-08-10T02:11:25.628955" level="INFO">Repeating keyword, round 14/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.629501" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.629090" elapsed="0.000892"/>
</kw>
<msg time="2026-08-10T02:11:25.630040" level="INFO">Repeating keyword, round 15/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.630551" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.630174" elapsed="0.001784"/>
</kw>
<msg time="2026-08-10T02:11:25.632028" level="INFO">Repeating keyword, round 16/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.632588" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.632163" elapsed="0.000898"/>
</kw>
<msg time="2026-08-10T02:11:25.633117" level="INFO">Repeating keyword, round 17/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.633654" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.633251" elapsed="0.001757"/>
</kw>
<msg time="2026-08-10T02:11:25.635075" level="INFO">Repeating keyword, round 18/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.635615" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.635210" elapsed="0.001168"/>
</kw>
<msg time="2026-08-10T02:11:25.636444" level="INFO">Repeating keyword, round 19/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.636913" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.636579" elapsed="0.002013"/>
</kw>
<msg time="2026-08-10T02:11:25.638740" level="INFO">Repeating keyword, round 20/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.639921" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.639084" elapsed="0.001542"/>
</kw>
<msg time="2026-08-10T02:11:25.640708" level="INFO">Repeating keyword, round 21/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.641408" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.640899" elapsed="0.001143"/>
</kw>
<msg time="2026-08-10T02:11:25.642119" level="INFO">Repeating keyword, round 22/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.642814" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.642307" elapsed="0.001183"/>
</kw>
<msg time="2026-08-10T02:11:25.643569" level="INFO">Repeating keyword, round 23/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.644278" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.643801" elapsed="0.001878"/>
</kw>
<msg time="2026-08-10T02:11:25.645770" level="INFO">Repeating keyword, round 24/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.646259" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.645913" elapsed="0.001254"/>
</kw>
<msg time="2026-08-10T02:11:25.647225" level="INFO">Repeating keyword, round 25/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.647731" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.647394" elapsed="0.001702"/>
</kw>
<msg time="2026-08-10T02:11:25.649154" level="INFO">Repeating keyword, round 26/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.649694" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.649289" elapsed="0.000895"/>
</kw>
<msg time="2026-08-10T02:11:25.650242" level="INFO">Repeating keyword, round 27/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.650757" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.650417" elapsed="0.002503"/>
</kw>
<msg time="2026-08-10T02:11:25.653001" level="INFO">Repeating keyword, round 28/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.653766" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.653189" elapsed="0.001814"/>
</kw>
<msg time="2026-08-10T02:11:25.655171" level="INFO">Repeating keyword, round 29/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.655890" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.655384" elapsed="0.001164"/>
</kw>
<msg time="2026-08-10T02:11:25.656625" level="INFO">Repeating keyword, round 30/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.657275" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.656812" elapsed="0.001677"/>
</kw>
<msg time="2026-08-10T02:11:25.658570" level="INFO">Repeating keyword, round 31/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.659222" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.658758" elapsed="0.001598"/>
</kw>
<msg time="2026-08-10T02:11:25.660449" level="INFO">Repeating keyword, round 32/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.661182" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.660637" elapsed="0.001808"/>
</kw>
<msg time="2026-08-10T02:11:25.662503" level="INFO">Repeating keyword, round 33/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.662973" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.662637" elapsed="0.003288"/>
</kw>
<msg time="2026-08-10T02:11:25.665985" level="INFO">Repeating keyword, round 34/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.666489" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.666120" elapsed="0.000865"/>
</kw>
<msg time="2026-08-10T02:11:25.667041" level="INFO">Repeating keyword, round 35/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.667533" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.667173" elapsed="0.001272"/>
</kw>
<msg time="2026-08-10T02:11:25.668504" level="INFO">Repeating keyword, round 36/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.668971" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.668637" elapsed="0.001123"/>
</kw>
<msg time="2026-08-10T02:11:25.669819" level="INFO">Repeating keyword, round 37/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.670398" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.669953" elapsed="0.001522"/>
</kw>
<msg time="2026-08-10T02:11:25.671532" level="INFO">Repeating keyword, round 38/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.672052" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.671665" elapsed="0.001049"/>
</kw>
<msg time="2026-08-10T02:11:25.672772" level="INFO">Repeating keyword, round 39/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.673443" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.672932" elapsed="0.001011"/>
</kw>
<msg time="2026-08-10T02:11:25.674003" level="INFO">Repeating keyword, round 40/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.674518" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.674140" elapsed="0.001749"/>
</kw>
<msg time="2026-08-10T02:11:25.675957" level="INFO">Repeating keyword, round 41/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.676589" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.676164" elapsed="0.000923"/>
</kw>
<msg time="2026-08-10T02:11:25.677144" level="INFO">Repeating keyword, round 42/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.677721" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.677309" elapsed="0.001778"/>
</kw>
<msg time="2026-08-10T02:11:25.679145" level="INFO">Repeating keyword, round 43/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.679701" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.679281" elapsed="0.000966"/>
</kw>
<msg time="2026-08-10T02:11:25.680304" level="INFO">Repeating keyword, round 44/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.680831" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.680486" elapsed="0.002069"/>
</kw>
<msg time="2026-08-10T02:11:25.682613" level="INFO">Repeating keyword, round 45/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.683136" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.682758" elapsed="0.000906"/>
</kw>
<msg time="2026-08-10T02:11:25.683720" level="INFO">Repeating keyword, round 46/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.684250" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.683853" elapsed="0.001324"/>
</kw>
<msg time="2026-08-10T02:11:25.685233" level="INFO">Repeating keyword, round 47/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.685728" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.685385" elapsed="0.001697"/>
</kw>
<msg time="2026-08-10T02:11:25.687142" level="INFO">Repeating keyword, round 48/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.687689" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.687276" elapsed="0.001000"/>
</kw>
<msg time="2026-08-10T02:11:25.688361" level="INFO">Repeating keyword, round 49/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.688872" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.688533" elapsed="0.001951"/>
</kw>
<msg time="2026-08-10T02:11:25.690566" level="INFO">Repeating keyword, round 50/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.691222" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.690752" elapsed="0.002404"/>
</kw>
<msg time="2026-08-10T02:11:25.693256" level="INFO">Repeating keyword, round 51/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.694007" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.693533" elapsed="0.001136"/>
</kw>
<msg time="2026-08-10T02:11:25.694749" level="INFO">Repeating keyword, round 52/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.695446" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.694936" elapsed="0.002339"/>
</kw>
<msg time="2026-08-10T02:11:25.697349" level="INFO">Repeating keyword, round 53/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.697885" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.697501" elapsed="0.000894"/>
</kw>
<msg time="2026-08-10T02:11:25.698452" level="INFO">Repeating keyword, round 54/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.699010" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.698675" elapsed="0.001256"/>
</kw>
<msg time="2026-08-10T02:11:25.699988" level="INFO">Repeating keyword, round 55/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.700508" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.700120" elapsed="0.001354"/>
</kw>
<msg time="2026-08-10T02:11:25.701532" level="INFO">Repeating keyword, round 56/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.702001" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.701666" elapsed="0.001166"/>
</kw>
<msg time="2026-08-10T02:11:25.702891" level="INFO">Repeating keyword, round 57/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.703486" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.703026" elapsed="0.001455"/>
</kw>
<msg time="2026-08-10T02:11:25.704538" level="INFO">Repeating keyword, round 58/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.705007" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.704672" elapsed="0.001800"/>
</kw>
<msg time="2026-08-10T02:11:25.706529" level="INFO">Repeating keyword, round 59/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.707000" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.706664" elapsed="0.000971"/>
</kw>
<msg time="2026-08-10T02:11:25.707693" level="INFO">Repeating keyword, round 60/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.708241" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.707827" elapsed="0.001031"/>
</kw>
<msg time="2026-08-10T02:11:25.708915" level="INFO">Repeating keyword, round 61/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.709429" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.709049" elapsed="0.001499"/>
</kw>
<msg time="2026-08-10T02:11:25.710606" level="INFO">Repeating keyword, round 62/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.711155" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.710740" elapsed="0.001090"/>
</kw>
<msg time="2026-08-10T02:11:25.711887" level="INFO">Repeating keyword, round 63/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.712422" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.712020" elapsed="0.001772"/>
</kw>
<msg time="2026-08-10T02:11:25.713858" level="INFO">Repeating keyword, round 64/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.714446" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.714032" elapsed="0.000921"/>
</kw>
<msg time="2026-08-10T02:11:25.715010" level="INFO">Repeating keyword, round 65/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.715535" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.715145" elapsed="0.001780"/>
</kw>
<msg time="2026-08-10T02:11:25.716984" level="INFO">Repeating keyword, round 66/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.717536" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.717120" elapsed="0.000928"/>
</kw>
<msg time="2026-08-10T02:11:25.718105" level="INFO">Repeating keyword, round 67/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.718672" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.718275" elapsed="0.001759"/>
</kw>
<msg time="2026-08-10T02:11:25.720094" level="INFO">Repeating keyword, round 68/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.720696" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.720229" elapsed="0.000968"/>
</kw>
<msg time="2026-08-10T02:11:25.721254" level="INFO">Repeating keyword, round 69/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.721784" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.721451" elapsed="0.002238"/>
</kw>
<msg time="2026-08-10T02:11:25.723749" level="INFO">Repeating keyword, round 70/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.724261" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.723883" elapsed="0.001023"/>
</kw>
<msg time="2026-08-10T02:11:25.724963" level="INFO">Repeating keyword, round 71/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.725452" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.725098" elapsed="0.001405"/>
</kw>
<msg time="2026-08-10T02:11:25.726560" level="INFO">Repeating keyword, round 72/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.727027" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.726695" elapsed="0.001907"/>
</kw>
<msg time="2026-08-10T02:11:25.728724" level="INFO">Repeating keyword, round 73/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.729645" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.728993" elapsed="0.001241"/>
</kw>
<msg time="2026-08-10T02:11:25.730313" level="INFO">Repeating keyword, round 74/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.730999" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.730535" elapsed="0.002403"/>
</kw>
<msg time="2026-08-10T02:11:25.733021" level="INFO">Repeating keyword, round 75/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.733773" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.733262" elapsed="0.001119"/>
</kw>
<msg time="2026-08-10T02:11:25.734459" level="INFO">Repeating keyword, round 76/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.735112" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.734646" elapsed="0.001046"/>
</kw>
<msg time="2026-08-10T02:11:25.735769" level="INFO">Repeating keyword, round 77/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.736456" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.735952" elapsed="0.001116"/>
</kw>
<msg time="2026-08-10T02:11:25.737126" level="INFO">Repeating keyword, round 78/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.737612" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.737258" elapsed="0.001716"/>
</kw>
<msg time="2026-08-10T02:11:25.739031" level="INFO">Repeating keyword, round 79/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.739794" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.739172" elapsed="0.001204"/>
</kw>
<msg time="2026-08-10T02:11:25.740435" level="INFO">Repeating keyword, round 80/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.740936" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.740594" elapsed="0.001977"/>
</kw>
<msg time="2026-08-10T02:11:25.742637" level="INFO">Repeating keyword, round 81/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.743163" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.742773" elapsed="0.000947"/>
</kw>
<msg time="2026-08-10T02:11:25.743875" level="INFO">Repeating keyword, round 82/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.744379" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.744021" elapsed="0.001320"/>
</kw>
<msg time="2026-08-10T02:11:25.745422" level="INFO">Repeating keyword, round 83/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.745888" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.745558" elapsed="0.001696"/>
</kw>
<msg time="2026-08-10T02:11:25.747312" level="INFO">Repeating keyword, round 84/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.747850" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.747469" elapsed="0.000916"/>
</kw>
<msg time="2026-08-10T02:11:25.748444" level="INFO">Repeating keyword, round 85/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.748972" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.748640" elapsed="0.001954"/>
</kw>
<msg time="2026-08-10T02:11:25.750653" level="INFO">Repeating keyword, round 86/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.751166" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.750787" elapsed="0.000936"/>
</kw>
<msg time="2026-08-10T02:11:25.751812" level="INFO">Repeating keyword, round 87/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.752285" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.751954" elapsed="0.001325"/>
</kw>
<msg time="2026-08-10T02:11:25.753335" level="INFO">Repeating keyword, round 88/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.753830" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.753497" elapsed="0.001688"/>
</kw>
<msg time="2026-08-10T02:11:25.755245" level="INFO">Repeating keyword, round 89/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.755805" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.755422" elapsed="0.000908"/>
</kw>
<msg time="2026-08-10T02:11:25.756411" level="INFO">Repeating keyword, round 90/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.756897" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.756546" elapsed="0.002185"/>
</kw>
<msg time="2026-08-10T02:11:25.758789" level="INFO">Repeating keyword, round 91/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.759306" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.758924" elapsed="0.000942"/>
</kw>
<msg time="2026-08-10T02:11:25.759956" level="INFO">Repeating keyword, round 92/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.760457" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.760099" elapsed="0.002074"/>
</kw>
<msg time="2026-08-10T02:11:25.762256" level="INFO">Repeating keyword, round 93/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.762997" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.762523" elapsed="0.001304"/>
</kw>
<msg time="2026-08-10T02:11:25.763908" level="INFO">Repeating keyword, round 94/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.764629" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.764095" elapsed="0.002035"/>
</kw>
<msg time="2026-08-10T02:11:25.766210" level="INFO">Repeating keyword, round 95/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.766949" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.766468" elapsed="0.001115"/>
</kw>
<msg time="2026-08-10T02:11:25.767704" level="INFO">Repeating keyword, round 96/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.768371" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.767904" elapsed="0.001881"/>
</kw>
<msg time="2026-08-10T02:11:25.769843" level="INFO">Repeating keyword, round 97/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.770386" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.769978" elapsed="0.000927"/>
</kw>
<msg time="2026-08-10T02:11:25.770960" level="INFO">Repeating keyword, round 98/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.771502" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.771095" elapsed="0.001788"/>
</kw>
<msg time="2026-08-10T02:11:25.772940" level="INFO">Repeating keyword, round 99/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.773499" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.773073" elapsed="0.000982"/>
</kw>
<msg time="2026-08-10T02:11:25.774157" level="INFO">Repeating keyword, round 100/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.774652" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.774291" elapsed="0.001299"/>
</kw>
<msg time="2026-08-10T02:11:25.775647" level="INFO">Repeating keyword, round 101/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.776136" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.775782" elapsed="0.002221"/>
</kw>
<msg time="2026-08-10T02:11:25.778062" level="INFO">Repeating keyword, round 102/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.778731" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.778198" elapsed="0.001474"/>
</kw>
<msg time="2026-08-10T02:11:25.779733" level="INFO">Repeating keyword, round 103/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.780200" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.779868" elapsed="0.001811"/>
</kw>
<msg time="2026-08-10T02:11:25.781738" level="INFO">Repeating keyword, round 104/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.782252" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.781871" elapsed="0.000903"/>
</kw>
<msg time="2026-08-10T02:11:25.782832" level="INFO">Repeating keyword, round 105/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.783361" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.782964" elapsed="0.001843"/>
</kw>
<msg time="2026-08-10T02:11:25.784865" level="INFO">Repeating keyword, round 106/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.785459" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.785034" elapsed="0.001150"/>
</kw>
<msg time="2026-08-10T02:11:25.786241" level="INFO">Repeating keyword, round 107/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.786774" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.786429" elapsed="0.002160"/>
</kw>
<msg time="2026-08-10T02:11:25.788647" level="INFO">Repeating keyword, round 108/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.789190" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.788781" elapsed="0.001929"/>
</kw>
<msg time="2026-08-10T02:11:25.790769" level="INFO">Repeating keyword, round 109/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.791285" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.790903" elapsed="0.000935"/>
</kw>
<msg time="2026-08-10T02:11:25.791894" level="INFO">Repeating keyword, round 110/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.792439" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.792026" elapsed="0.001451"/>
</kw>
<msg time="2026-08-10T02:11:25.793533" level="INFO">Repeating keyword, round 111/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.793995" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.793665" elapsed="0.002264"/>
</kw>
<msg time="2026-08-10T02:11:25.796010" level="INFO">Repeating keyword, round 112/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.796752" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.796196" elapsed="0.001240"/>
</kw>
<msg time="2026-08-10T02:11:25.797515" level="INFO">Repeating keyword, round 113/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.798203" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.797700" elapsed="0.002406"/>
</kw>
<msg time="2026-08-10T02:11:25.800187" level="INFO">Repeating keyword, round 114/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.800929" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.800448" elapsed="0.001205"/>
</kw>
<msg time="2026-08-10T02:11:25.801732" level="INFO">Repeating keyword, round 115/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.802298" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.801919" elapsed="0.001789"/>
</kw>
<msg time="2026-08-10T02:11:25.803765" level="INFO">Repeating keyword, round 116/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.804287" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.803900" elapsed="0.001284"/>
</kw>
<msg time="2026-08-10T02:11:25.805242" level="INFO">Repeating keyword, round 117/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.805778" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.805397" elapsed="0.001756"/>
</kw>
<msg time="2026-08-10T02:11:25.807212" level="INFO">Repeating keyword, round 118/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.807768" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.807384" elapsed="0.000910"/>
</kw>
<msg time="2026-08-10T02:11:25.808375" level="INFO">Repeating keyword, round 119/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.808880" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.808509" elapsed="0.001782"/>
</kw>
<msg time="2026-08-10T02:11:25.810377" level="INFO">Repeating keyword, round 120/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.810890" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.810512" elapsed="0.000995"/>
</kw>
<msg time="2026-08-10T02:11:25.811565" level="INFO">Repeating keyword, round 121/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.812077" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.811739" elapsed="0.001303"/>
</kw>
<msg time="2026-08-10T02:11:25.813100" level="INFO">Repeating keyword, round 122/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.813642" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.813277" elapsed="0.001748"/>
</kw>
<msg time="2026-08-10T02:11:25.815085" level="INFO">Repeating keyword, round 123/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.815634" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.815223" elapsed="0.000956"/>
</kw>
<msg time="2026-08-10T02:11:25.816236" level="INFO">Repeating keyword, round 124/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.816772" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.816425" elapsed="0.002567"/>
</kw>
<msg time="2026-08-10T02:11:25.819072" level="INFO">Repeating keyword, round 125/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.819957" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.819258" elapsed="0.001384"/>
</kw>
<msg time="2026-08-10T02:11:25.820722" level="INFO">Repeating keyword, round 126/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.821423" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.820908" elapsed="0.002388"/>
</kw>
<msg time="2026-08-10T02:11:25.823409" level="INFO">Repeating keyword, round 127/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.824121" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.823653" elapsed="0.001134"/>
</kw>
<msg time="2026-08-10T02:11:25.824867" level="INFO">Repeating keyword, round 128/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.825602" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.825053" elapsed="0.002057"/>
</kw>
<msg time="2026-08-10T02:11:25.827168" level="INFO">Repeating keyword, round 129/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.827731" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.827302" elapsed="0.000970"/>
</kw>
<msg time="2026-08-10T02:11:25.828329" level="INFO">Repeating keyword, round 130/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.828857" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.828516" elapsed="0.002082"/>
</kw>
<msg time="2026-08-10T02:11:25.830657" level="INFO">Repeating keyword, round 131/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.831171" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.830791" elapsed="0.000987"/>
</kw>
<msg time="2026-08-10T02:11:25.831834" level="INFO">Repeating keyword, round 132/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.832298" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.831967" elapsed="0.001429"/>
</kw>
<msg time="2026-08-10T02:11:25.833471" level="INFO">Repeating keyword, round 133/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.833946" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.833608" elapsed="0.002237"/>
</kw>
<msg time="2026-08-10T02:11:25.835925" level="INFO">Repeating keyword, round 134/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.836674" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.836116" elapsed="0.001210"/>
</kw>
<msg time="2026-08-10T02:11:25.837529" level="INFO">Repeating keyword, round 135/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.838192" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.837721" elapsed="0.002373"/>
</kw>
<msg time="2026-08-10T02:11:25.840176" level="INFO">Repeating keyword, round 136/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.840929" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.840396" elapsed="0.001240"/>
</kw>
<msg time="2026-08-10T02:11:25.841716" level="INFO">Repeating keyword, round 137/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.842278" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.841903" elapsed="0.001833"/>
</kw>
<msg time="2026-08-10T02:11:25.843795" level="INFO">Repeating keyword, round 138/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.844313" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.843929" elapsed="0.000962"/>
</kw>
<msg time="2026-08-10T02:11:25.844950" level="INFO">Repeating keyword, round 139/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.845499" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.845116" elapsed="0.001773"/>
</kw>
<msg time="2026-08-10T02:11:25.846956" level="INFO">Repeating keyword, round 140/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.847497" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.847091" elapsed="0.001004"/>
</kw>
<msg time="2026-08-10T02:11:25.848151" level="INFO">Repeating keyword, round 141/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.848644" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.848285" elapsed="0.001823"/>
</kw>
<msg time="2026-08-10T02:11:25.850167" level="INFO">Repeating keyword, round 142/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.850729" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.850301" elapsed="0.001146"/>
</kw>
<msg time="2026-08-10T02:11:25.851505" level="INFO">Repeating keyword, round 143/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.851970" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.851638" elapsed="0.001464"/>
</kw>
<msg time="2026-08-10T02:11:25.853159" level="INFO">Repeating keyword, round 144/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.853725" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.853292" elapsed="0.001196"/>
</kw>
<msg time="2026-08-10T02:11:25.854546" level="INFO">Repeating keyword, round 145/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.855018" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.854687" elapsed="0.002417"/>
</kw>
<msg time="2026-08-10T02:11:25.857163" level="INFO">Repeating keyword, round 146/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.857784" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.857297" elapsed="0.001075"/>
</kw>
<msg time="2026-08-10T02:11:25.858461" level="INFO">Repeating keyword, round 147/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.858936" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.858604" elapsed="0.001876"/>
</kw>
<msg time="2026-08-10T02:11:25.860537" level="INFO">Repeating keyword, round 148/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.861102" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.860670" elapsed="0.001055"/>
</kw>
<msg time="2026-08-10T02:11:25.861783" level="INFO">Repeating keyword, round 149/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.862300" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.861916" elapsed="0.001887"/>
</kw>
<msg time="2026-08-10T02:11:25.863861" level="INFO">Repeating keyword, round 150/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.864396" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.863994" elapsed="0.000949"/>
</kw>
<msg time="2026-08-10T02:11:25.865001" level="INFO">Repeating keyword, round 151/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.865530" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.865174" elapsed="0.001396"/>
</kw>
<msg time="2026-08-10T02:11:25.866626" level="INFO">Repeating keyword, round 152/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.867092" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.866760" elapsed="0.001761"/>
</kw>
<msg time="2026-08-10T02:11:25.868618" level="INFO">Repeating keyword, round 153/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.869135" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.868752" elapsed="0.001013"/>
</kw>
<msg time="2026-08-10T02:11:25.869822" level="INFO">Repeating keyword, round 154/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.870288" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.869955" elapsed="0.001752"/>
</kw>
<msg time="2026-08-10T02:11:25.871765" level="INFO">Repeating keyword, round 155/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.872235" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.871901" elapsed="0.001114"/>
</kw>
<msg time="2026-08-10T02:11:25.873074" level="INFO">Repeating keyword, round 156/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.873621" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.873207" elapsed="0.002402"/>
</kw>
<msg time="2026-08-10T02:11:25.875668" level="INFO">Repeating keyword, round 157/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.876174" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.875801" elapsed="0.001124"/>
</kw>
<msg time="2026-08-10T02:11:25.876985" level="INFO">Repeating keyword, round 158/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.877480" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.877118" elapsed="0.001518"/>
</kw>
<msg time="2026-08-10T02:11:25.878694" level="INFO">Repeating keyword, round 159/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.879210" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.878829" elapsed="0.001847"/>
</kw>
<msg time="2026-08-10T02:11:25.880734" level="INFO">Repeating keyword, round 160/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.881204" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.880869" elapsed="0.001011"/>
</kw>
<msg time="2026-08-10T02:11:25.881938" level="INFO">Repeating keyword, round 161/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.882494" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.882073" elapsed="0.001833"/>
</kw>
<msg time="2026-08-10T02:11:25.883964" level="INFO">Repeating keyword, round 162/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.884502" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.884098" elapsed="0.001148"/>
</kw>
<msg time="2026-08-10T02:11:25.885303" level="INFO">Repeating keyword, round 163/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.885827" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.885461" elapsed="0.001424"/>
</kw>
<msg time="2026-08-10T02:11:25.886942" level="INFO">Repeating keyword, round 164/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.887507" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.887075" elapsed="0.000985"/>
</kw>
<msg time="2026-08-10T02:11:25.888116" level="INFO">Repeating keyword, round 165/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.888695" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.888248" elapsed="0.001887"/>
</kw>
<msg time="2026-08-10T02:11:25.890193" level="INFO">Repeating keyword, round 166/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.890731" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.890325" elapsed="0.000967"/>
</kw>
<msg time="2026-08-10T02:11:25.891375" level="INFO">Repeating keyword, round 167/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.891842" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.891509" elapsed="0.001708"/>
</kw>
<msg time="2026-08-10T02:11:25.893274" level="INFO">Repeating keyword, round 168/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.893852" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.893446" elapsed="0.001032"/>
</kw>
<msg time="2026-08-10T02:11:25.894542" level="INFO">Repeating keyword, round 169/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.895004" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.894674" elapsed="0.001735"/>
</kw>
<msg time="2026-08-10T02:11:25.896466" level="INFO">Repeating keyword, round 170/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.897018" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.896597" elapsed="0.002017"/>
</kw>
<msg time="2026-08-10T02:11:25.898675" level="INFO">Repeating keyword, round 171/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.899297" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.898811" elapsed="0.001086"/>
</kw>
<msg time="2026-08-10T02:11:25.899955" level="INFO">Repeating keyword, round 172/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.900520" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.900125" elapsed="0.001365"/>
</kw>
<msg time="2026-08-10T02:11:25.901549" level="INFO">Repeating keyword, round 173/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.902072" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.901684" elapsed="0.001822"/>
</kw>
<msg time="2026-08-10T02:11:25.903565" level="INFO">Repeating keyword, round 174/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.904082" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.903699" elapsed="0.001033"/>
</kw>
<msg time="2026-08-10T02:11:25.904819" level="INFO">Repeating keyword, round 175/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.905292" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.904962" elapsed="0.001443"/>
</kw>
<msg time="2026-08-10T02:11:25.906463" level="INFO">Repeating keyword, round 176/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.906925" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.906595" elapsed="0.002090"/>
</kw>
<msg time="2026-08-10T02:11:25.908764" level="INFO">Repeating keyword, round 177/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.909509" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.908950" elapsed="0.001277"/>
</kw>
<msg time="2026-08-10T02:11:25.910304" level="INFO">Repeating keyword, round 178/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.911032" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.910565" elapsed="0.001345"/>
</kw>
<msg time="2026-08-10T02:11:25.911987" level="INFO">Repeating keyword, round 179/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.912686" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.912171" elapsed="0.002440"/>
</kw>
<msg time="2026-08-10T02:11:25.914693" level="INFO">Repeating keyword, round 180/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.915395" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.914879" elapsed="0.001079"/>
</kw>
<msg time="2026-08-10T02:11:25.916013" level="INFO">Repeating keyword, round 181/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.916548" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.916149" elapsed="0.001792"/>
</kw>
<msg time="2026-08-10T02:11:25.918000" level="INFO">Repeating keyword, round 182/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.918623" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.918190" elapsed="0.001015"/>
</kw>
<msg time="2026-08-10T02:11:25.919262" level="INFO">Repeating keyword, round 183/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.919803" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.919422" elapsed="0.001823"/>
</kw>
<msg time="2026-08-10T02:11:25.921304" level="INFO">Repeating keyword, round 184/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.921848" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.921463" elapsed="0.001006"/>
</kw>
<msg time="2026-08-10T02:11:25.922527" level="INFO">Repeating keyword, round 185/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.922994" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.922660" elapsed="0.001835"/>
</kw>
<msg time="2026-08-10T02:11:25.924554" level="INFO">Repeating keyword, round 186/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.925066" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.924686" elapsed="0.000983"/>
</kw>
<msg time="2026-08-10T02:11:25.925725" level="INFO">Repeating keyword, round 187/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.926269" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.925857" elapsed="0.001441"/>
</kw>
<msg time="2026-08-10T02:11:25.927417" level="INFO">Repeating keyword, round 188/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.927884" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.927551" elapsed="0.001739"/>
</kw>
<msg time="2026-08-10T02:11:25.929372" level="INFO">Repeating keyword, round 189/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.929887" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.929506" elapsed="0.001072"/>
</kw>
<msg time="2026-08-10T02:11:25.930636" level="INFO">Repeating keyword, round 190/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.931153" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.930769" elapsed="0.002374"/>
</kw>
<msg time="2026-08-10T02:11:25.933224" level="INFO">Repeating keyword, round 191/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.933964" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.933485" elapsed="0.001266"/>
</kw>
<msg time="2026-08-10T02:11:25.934832" level="INFO">Repeating keyword, round 192/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.935518" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.935020" elapsed="0.002454"/>
</kw>
<msg time="2026-08-10T02:11:25.937554" level="INFO">Repeating keyword, round 193/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.938382" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.937786" elapsed="0.001388"/>
</kw>
<msg time="2026-08-10T02:11:25.939243" level="INFO">Repeating keyword, round 194/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.939833" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.939404" elapsed="0.001848"/>
</kw>
<msg time="2026-08-10T02:11:25.941311" level="INFO">Repeating keyword, round 195/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.941847" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.941464" elapsed="0.001054"/>
</kw>
<msg time="2026-08-10T02:11:25.942575" level="INFO">Repeating keyword, round 196/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.943089" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.942710" elapsed="0.001393"/>
</kw>
<msg time="2026-08-10T02:11:25.944160" level="INFO">Repeating keyword, round 197/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.944665" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.944293" elapsed="0.001785"/>
</kw>
<msg time="2026-08-10T02:11:25.946135" level="INFO">Repeating keyword, round 198/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.946718" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.946293" elapsed="0.001007"/>
</kw>
<msg time="2026-08-10T02:11:25.947381" level="INFO">Repeating keyword, round 199/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.947887" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.947546" elapsed="0.001736"/>
</kw>
<msg time="2026-08-10T02:11:25.949371" level="INFO">Repeating keyword, round 200/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.949883" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.949506" elapsed="0.002220"/>
</kw>
<msg time="2026-08-10T02:11:25.951806" level="INFO">Repeating keyword, round 201/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.952554" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.951992" elapsed="0.001286"/>
</kw>
<msg time="2026-08-10T02:11:25.953416" level="INFO">Repeating keyword, round 202/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.954064" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.953603" elapsed="0.001287"/>
</kw>
<msg time="2026-08-10T02:11:25.954968" level="INFO">Repeating keyword, round 203/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.955669" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.955151" elapsed="0.002322"/>
</kw>
<msg time="2026-08-10T02:11:25.957554" level="INFO">Repeating keyword, round 204/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.958202" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.957738" elapsed="0.002062"/>
</kw>
<msg time="2026-08-10T02:11:25.959857" level="INFO">Repeating keyword, round 205/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.960390" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.959989" elapsed="0.000995"/>
</kw>
<msg time="2026-08-10T02:11:25.961114" level="INFO">Repeating keyword, round 206/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.961638" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.961259" elapsed="0.002364"/>
</kw>
<msg time="2026-08-10T02:11:25.963682" level="INFO">Repeating keyword, round 207/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.964195" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.963816" elapsed="0.001016"/>
</kw>
<msg time="2026-08-10T02:11:25.964899" level="INFO">Repeating keyword, round 208/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.965386" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.965033" elapsed="0.002692"/>
</kw>
<msg time="2026-08-10T02:11:25.967806" level="INFO">Repeating keyword, round 209/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.968552" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.967991" elapsed="0.001252"/>
</kw>
<msg time="2026-08-10T02:11:25.969322" level="INFO">Repeating keyword, round 210/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.970001" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.969538" elapsed="0.002457"/>
</kw>
<msg time="2026-08-10T02:11:25.972077" level="INFO">Repeating keyword, round 211/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.972818" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.972310" elapsed="0.001249"/>
</kw>
<msg time="2026-08-10T02:11:25.973639" level="INFO">Repeating keyword, round 212/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.974287" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.973826" elapsed="0.002286"/>
</kw>
<msg time="2026-08-10T02:11:25.976172" level="INFO">Repeating keyword, round 213/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.976732" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.976309" elapsed="0.001030"/>
</kw>
<msg time="2026-08-10T02:11:25.977412" level="INFO">Repeating keyword, round 214/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.977914" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.977583" elapsed="0.002365"/>
</kw>
<msg time="2026-08-10T02:11:25.980006" level="INFO">Repeating keyword, round 215/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.980544" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.980139" elapsed="0.001000"/>
</kw>
<msg time="2026-08-10T02:11:25.981194" level="INFO">Repeating keyword, round 216/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.981721" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.981384" elapsed="0.001876"/>
</kw>
<msg time="2026-08-10T02:11:25.983389" level="INFO">Repeating keyword, round 217/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.984236" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.983578" elapsed="0.001429"/>
</kw>
<msg time="2026-08-10T02:11:25.985087" level="INFO">Repeating keyword, round 218/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.985772" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.985271" elapsed="0.002482"/>
</kw>
<msg time="2026-08-10T02:11:25.987833" level="INFO">Repeating keyword, round 219/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.988580" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.988017" elapsed="0.001285"/>
</kw>
<msg time="2026-08-10T02:11:25.989417" level="INFO">Repeating keyword, round 220/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.990067" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.989605" elapsed="0.002179"/>
</kw>
<msg time="2026-08-10T02:11:25.991841" level="INFO">Repeating keyword, round 221/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.992384" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.991973" elapsed="0.001232"/>
</kw>
<msg time="2026-08-10T02:11:25.993261" level="INFO">Repeating keyword, round 222/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.993745" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.993415" elapsed="0.001758"/>
</kw>
<msg time="2026-08-10T02:11:25.995230" level="INFO">Repeating keyword, round 223/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.995834" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.995402" elapsed="0.001090"/>
</kw>
<msg time="2026-08-10T02:11:25.996550" level="INFO">Repeating keyword, round 224/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.997014" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.996681" elapsed="0.001781"/>
</kw>
<msg time="2026-08-10T02:11:25.998519" level="INFO">Repeating keyword, round 225/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:25.999098" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:25.998653" elapsed="0.002018"/>
</kw>
<msg time="2026-08-10T02:11:26.000730" level="INFO">Repeating keyword, round 226/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.001250" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.000865" elapsed="0.001038"/>
</kw>
<msg time="2026-08-10T02:11:26.001961" level="INFO">Repeating keyword, round 227/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.002476" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.002096" elapsed="0.002534"/>
</kw>
<msg time="2026-08-10T02:11:26.004689" level="INFO">Repeating keyword, round 228/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.005202" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.004821" elapsed="0.000997"/>
</kw>
<msg time="2026-08-10T02:11:26.005875" level="INFO">Repeating keyword, round 229/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.006410" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.006053" elapsed="0.002891"/>
</kw>
<msg time="2026-08-10T02:11:26.009024" level="INFO">Repeating keyword, round 230/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.009768" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.009208" elapsed="0.001283"/>
</kw>
<msg time="2026-08-10T02:11:26.010570" level="INFO">Repeating keyword, round 231/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.011243" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.010754" elapsed="0.002433"/>
</kw>
<msg time="2026-08-10T02:11:26.013267" level="INFO">Repeating keyword, round 232/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.014016" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.013485" elapsed="0.001313"/>
</kw>
<msg time="2026-08-10T02:11:26.014930" level="INFO">Repeating keyword, round 233/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.015524" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.015142" elapsed="0.001817"/>
</kw>
<msg time="2026-08-10T02:11:26.017027" level="INFO">Repeating keyword, round 234/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.017607" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.017166" elapsed="0.001042"/>
</kw>
<msg time="2026-08-10T02:11:26.018263" level="INFO">Repeating keyword, round 235/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.018823" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.018416" elapsed="0.001910"/>
</kw>
<msg time="2026-08-10T02:11:26.020422" level="INFO">Repeating keyword, round 236/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.020953" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.020559" elapsed="0.001200"/>
</kw>
<msg time="2026-08-10T02:11:26.021818" level="INFO">Repeating keyword, round 237/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.022287" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.021952" elapsed="0.001509"/>
</kw>
<msg time="2026-08-10T02:11:26.023527" level="INFO">Repeating keyword, round 238/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.024075" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.023661" elapsed="0.001064"/>
</kw>
<msg time="2026-08-10T02:11:26.024836" level="INFO">Repeating keyword, round 239/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.025313" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.024982" elapsed="0.001994"/>
</kw>
<msg time="2026-08-10T02:11:26.027034" level="INFO">Repeating keyword, round 240/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.027691" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.027172" elapsed="0.001133"/>
</kw>
<msg time="2026-08-10T02:11:26.028426" level="INFO">Repeating keyword, round 241/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.028935" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.028602" elapsed="0.002040"/>
</kw>
<msg time="2026-08-10T02:11:26.030700" level="INFO">Repeating keyword, round 242/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.031247" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.030832" elapsed="0.001046"/>
</kw>
<msg time="2026-08-10T02:11:26.031935" level="INFO">Repeating keyword, round 243/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.032465" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.032067" elapsed="0.001452"/>
</kw>
<msg time="2026-08-10T02:11:26.033576" level="INFO">Repeating keyword, round 244/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.034036" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.033707" elapsed="0.001803"/>
</kw>
<msg time="2026-08-10T02:11:26.035569" level="INFO">Repeating keyword, round 245/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.036085" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.035704" elapsed="0.001087"/>
</kw>
<msg time="2026-08-10T02:11:26.036857" level="INFO">Repeating keyword, round 246/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.037321" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.036991" elapsed="0.001776"/>
</kw>
<msg time="2026-08-10T02:11:26.038833" level="INFO">Repeating keyword, round 247/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.039444" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.038971" elapsed="0.001108"/>
</kw>
<msg time="2026-08-10T02:11:26.040178" level="INFO">Repeating keyword, round 248/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.040896" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.040419" elapsed="0.002470"/>
</kw>
<msg time="2026-08-10T02:11:26.042969" level="INFO">Repeating keyword, round 249/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.043782" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.043263" elapsed="0.001300"/>
</kw>
<msg time="2026-08-10T02:11:26.044643" level="INFO">Repeating keyword, round 250/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.045303" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.044829" elapsed="0.002605"/>
</kw>
<msg time="2026-08-10T02:11:26.047515" level="INFO">Repeating keyword, round 251/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.048186" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.047700" elapsed="0.001011"/>
</kw>
<msg time="2026-08-10T02:11:26.048768" level="INFO">Repeating keyword, round 252/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.049232" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.048901" elapsed="0.001863"/>
</kw>
<msg time="2026-08-10T02:11:26.050826" level="INFO">Repeating keyword, round 253/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.051393" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.050959" elapsed="0.002050"/>
</kw>
<msg time="2026-08-10T02:11:26.053067" level="INFO">Repeating keyword, round 254/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.053599" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.053200" elapsed="0.001193"/>
</kw>
<msg time="2026-08-10T02:11:26.054482" level="INFO">Repeating keyword, round 255/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.054953" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.054623" elapsed="0.001473"/>
</kw>
<msg time="2026-08-10T02:11:26.056154" level="INFO">Repeating keyword, round 256/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.056711" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.056287" elapsed="0.001128"/>
</kw>
<msg time="2026-08-10T02:11:26.057472" level="INFO">Repeating keyword, round 257/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.057981" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.057603" elapsed="0.001891"/>
</kw>
<msg time="2026-08-10T02:11:26.059552" level="INFO">Repeating keyword, round 258/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.060067" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.059685" elapsed="0.001039"/>
</kw>
<msg time="2026-08-10T02:11:26.060820" level="INFO">Repeating keyword, round 259/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.061358" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.060956" elapsed="0.001465"/>
</kw>
<msg time="2026-08-10T02:11:26.062477" level="INFO">Repeating keyword, round 260/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.062941" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.062609" elapsed="0.001996"/>
</kw>
<msg time="2026-08-10T02:11:26.064686" level="INFO">Repeating keyword, round 261/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.065435" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.064872" elapsed="0.001224"/>
</kw>
<msg time="2026-08-10T02:11:26.066176" level="INFO">Repeating keyword, round 262/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.066852" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.066390" elapsed="0.002547"/>
</kw>
<msg time="2026-08-10T02:11:26.069019" level="INFO">Repeating keyword, round 263/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.069887" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.069203" elapsed="0.001379"/>
</kw>
<msg time="2026-08-10T02:11:26.070663" level="INFO">Repeating keyword, round 264/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.071322" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.070848" elapsed="0.002285"/>
</kw>
<msg time="2026-08-10T02:11:26.073193" level="INFO">Repeating keyword, round 265/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.073755" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.073326" elapsed="0.001068"/>
</kw>
<msg time="2026-08-10T02:11:26.074483" level="INFO">Repeating keyword, round 266/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.074955" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.074625" elapsed="0.002040"/>
</kw>
<msg time="2026-08-10T02:11:26.076822" level="INFO">Repeating keyword, round 267/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.077979" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.077206" elapsed="0.001556"/>
</kw>
<msg time="2026-08-10T02:11:26.078842" level="INFO">Repeating keyword, round 268/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.079652" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.079077" elapsed="0.002727"/>
</kw>
<msg time="2026-08-10T02:11:26.081887" level="INFO">Repeating keyword, round 269/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.082691" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.082079" elapsed="0.001524"/>
</kw>
<msg time="2026-08-10T02:11:26.083686" level="INFO">Repeating keyword, round 270/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.084397" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.083885" elapsed="0.001569"/>
</kw>
<msg time="2026-08-10T02:11:26.085535" level="INFO">Repeating keyword, round 271/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.086197" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.085724" elapsed="0.001817"/>
</kw>
<msg time="2026-08-10T02:11:26.087628" level="INFO">Repeating keyword, round 272/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.088291" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.087817" elapsed="0.001681"/>
</kw>
<msg time="2026-08-10T02:11:26.089586" level="INFO">Repeating keyword, round 273/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.090411" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.089886" elapsed="0.001423"/>
</kw>
<msg time="2026-08-10T02:11:26.091432" level="INFO">Repeating keyword, round 274/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.092141" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.091664" elapsed="0.001369"/>
</kw>
<msg time="2026-08-10T02:11:26.093110" level="INFO">Repeating keyword, round 275/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.093792" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.093295" elapsed="0.001206"/>
</kw>
<msg time="2026-08-10T02:11:26.094580" level="INFO">Repeating keyword, round 276/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.095360" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.094766" elapsed="0.002120"/>
</kw>
<msg time="2026-08-10T02:11:26.096945" level="INFO">Repeating keyword, round 277/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.097520" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.097080" elapsed="0.001383"/>
</kw>
<msg time="2026-08-10T02:11:26.098521" level="INFO">Repeating keyword, round 278/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.098994" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.098654" elapsed="0.001490"/>
</kw>
<msg time="2026-08-10T02:11:26.100204" level="INFO">Repeating keyword, round 279/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.100795" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.100355" elapsed="0.001172"/>
</kw>
<msg time="2026-08-10T02:11:26.101585" level="INFO">Repeating keyword, round 280/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.102057" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.101721" elapsed="0.001746"/>
</kw>
<msg time="2026-08-10T02:11:26.103527" level="INFO">Repeating keyword, round 281/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.104049" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.103709" elapsed="0.001022"/>
</kw>
<msg time="2026-08-10T02:11:26.104790" level="INFO">Repeating keyword, round 282/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.105308" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.104924" elapsed="0.001079"/>
</kw>
<msg time="2026-08-10T02:11:26.106060" level="INFO">Repeating keyword, round 283/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.106585" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.106194" elapsed="0.001242"/>
</kw>
<msg time="2026-08-10T02:11:26.107493" level="INFO">Repeating keyword, round 284/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.108007" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.107665" elapsed="0.001270"/>
</kw>
<msg time="2026-08-10T02:11:26.109002" level="INFO">Repeating keyword, round 285/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.109590" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.109138" elapsed="0.001950"/>
</kw>
<msg time="2026-08-10T02:11:26.111147" level="INFO">Repeating keyword, round 286/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.111878" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.111282" elapsed="0.001349"/>
</kw>
<msg time="2026-08-10T02:11:26.112690" level="INFO">Repeating keyword, round 287/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.113162" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.112825" elapsed="0.001385"/>
</kw>
<msg time="2026-08-10T02:11:26.114267" level="INFO">Repeating keyword, round 288/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.114764" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.114419" elapsed="0.001031"/>
</kw>
<msg time="2026-08-10T02:11:26.115507" level="INFO">Repeating keyword, round 289/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.116002" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.115639" elapsed="0.001433"/>
</kw>
<msg time="2026-08-10T02:11:26.117131" level="INFO">Repeating keyword, round 290/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.117729" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.117264" elapsed="0.001134"/>
</kw>
<msg time="2026-08-10T02:11:26.118456" level="INFO">Repeating keyword, round 291/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.118921" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.118588" elapsed="0.001901"/>
</kw>
<msg time="2026-08-10T02:11:26.120575" level="INFO">Repeating keyword, round 292/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.121228" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.120762" elapsed="0.001231"/>
</kw>
<msg time="2026-08-10T02:11:26.122073" level="INFO">Repeating keyword, round 293/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.122884" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.122259" elapsed="0.001498"/>
</kw>
<msg time="2026-08-10T02:11:26.123912" level="INFO">Repeating keyword, round 294/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.124604" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.124104" elapsed="0.002561"/>
</kw>
<msg time="2026-08-10T02:11:26.126746" level="INFO">Repeating keyword, round 295/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.127511" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.126933" elapsed="0.001318"/>
</kw>
<msg time="2026-08-10T02:11:26.128308" level="INFO">Repeating keyword, round 296/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.128811" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.128479" elapsed="0.000974"/>
</kw>
<msg time="2026-08-10T02:11:26.129511" level="INFO">Repeating keyword, round 297/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.129983" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.129650" elapsed="0.001451"/>
</kw>
<msg time="2026-08-10T02:11:26.131159" level="INFO">Repeating keyword, round 298/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.131742" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.131292" elapsed="0.001143"/>
</kw>
<msg time="2026-08-10T02:11:26.132491" level="INFO">Repeating keyword, round 299/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.133030" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.132624" elapsed="0.001895"/>
</kw>
<msg time="2026-08-10T02:11:26.134577" level="INFO">Repeating keyword, round 300/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.135097" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.134713" elapsed="0.001053"/>
</kw>
<msg time="2026-08-10T02:11:26.135859" level="INFO">Repeating keyword, round 301/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.136353" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.135995" elapsed="0.001842"/>
</kw>
<msg time="2026-08-10T02:11:26.137895" level="INFO">Repeating keyword, round 302/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.138441" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.138031" elapsed="0.001053"/>
</kw>
<msg time="2026-08-10T02:11:26.139141" level="INFO">Repeating keyword, round 303/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.139629" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.139274" elapsed="0.001180"/>
</kw>
<msg time="2026-08-10T02:11:26.140513" level="INFO">Repeating keyword, round 304/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.140984" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.140648" elapsed="0.001506"/>
</kw>
<msg time="2026-08-10T02:11:26.142212" level="INFO">Repeating keyword, round 305/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.142814" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.142378" elapsed="0.002087"/>
</kw>
<msg time="2026-08-10T02:11:26.144528" level="INFO">Repeating keyword, round 306/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.144996" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.144661" elapsed="0.001023"/>
</kw>
<msg time="2026-08-10T02:11:26.145776" level="INFO">Repeating keyword, round 307/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.146273" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.145934" elapsed="0.001936"/>
</kw>
<msg time="2026-08-10T02:11:26.147948" level="INFO">Repeating keyword, round 308/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.148511" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.148090" elapsed="0.001062"/>
</kw>
<msg time="2026-08-10T02:11:26.149209" level="INFO">Repeating keyword, round 309/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.150972" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.149362" elapsed="0.002276"/>
</kw>
<msg time="2026-08-10T02:11:26.151697" level="INFO">Repeating keyword, round 310/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.152219" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.151829" elapsed="0.001896"/>
</kw>
<msg time="2026-08-10T02:11:26.153785" level="INFO">Repeating keyword, round 311/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.154353" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.153930" elapsed="0.001148"/>
</kw>
<msg time="2026-08-10T02:11:26.155182" level="INFO">Repeating keyword, round 312/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.155715" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.155319" elapsed="0.001870"/>
</kw>
<msg time="2026-08-10T02:11:26.157250" level="INFO">Repeating keyword, round 313/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.157809" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.157421" elapsed="0.001069"/>
</kw>
<msg time="2026-08-10T02:11:26.158549" level="INFO">Repeating keyword, round 314/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.159070" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.158728" elapsed="0.001629"/>
</kw>
<msg time="2026-08-10T02:11:26.160430" level="INFO">Repeating keyword, round 315/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.160904" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.160565" elapsed="0.000895"/>
</kw>
<msg time="2026-08-10T02:11:26.161518" level="INFO">Repeating keyword, round 316/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.161988" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.161652" elapsed="0.001569"/>
</kw>
<msg time="2026-08-10T02:11:26.163280" level="INFO">Repeating keyword, round 317/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.163853" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.163431" elapsed="0.002166"/>
</kw>
<msg time="2026-08-10T02:11:26.165656" level="INFO">Repeating keyword, round 318/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.166176" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.165790" elapsed="0.001063"/>
</kw>
<msg time="2026-08-10T02:11:26.166911" level="INFO">Repeating keyword, round 319/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.167406" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.167044" elapsed="0.001584"/>
</kw>
<msg time="2026-08-10T02:11:26.168687" level="INFO">Repeating keyword, round 320/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.169236" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.168821" elapsed="0.001692"/>
</kw>
<msg time="2026-08-10T02:11:26.170594" level="INFO">Repeating keyword, round 321/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.171253" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.170779" elapsed="0.002354"/>
</kw>
<msg time="2026-08-10T02:11:26.173213" level="INFO">Repeating keyword, round 322/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.174047" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.173487" elapsed="0.002013"/>
</kw>
<msg time="2026-08-10T02:11:26.175579" level="INFO">Repeating keyword, round 323/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.176303" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.175764" elapsed="0.001709"/>
</kw>
<msg time="2026-08-10T02:11:26.177535" level="INFO">Repeating keyword, round 324/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.178096" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.177671" elapsed="0.001780"/>
</kw>
<msg time="2026-08-10T02:11:26.179509" level="INFO">Repeating keyword, round 325/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.179976" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.179642" elapsed="0.001024"/>
</kw>
<msg time="2026-08-10T02:11:26.180724" level="INFO">Repeating keyword, round 326/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.181250" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.180910" elapsed="0.000958"/>
</kw>
<msg time="2026-08-10T02:11:26.181925" level="INFO">Repeating keyword, round 327/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.182430" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.182058" elapsed="0.001602"/>
</kw>
<msg time="2026-08-10T02:11:26.183717" level="INFO">Repeating keyword, round 328/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.184313" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.183851" elapsed="0.001174"/>
</kw>
<msg time="2026-08-10T02:11:26.185081" level="INFO">Repeating keyword, round 329/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.185666" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.185214" elapsed="0.001904"/>
</kw>
<msg time="2026-08-10T02:11:26.187177" level="INFO">Repeating keyword, round 330/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.187721" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.187310" elapsed="0.001134"/>
</kw>
<msg time="2026-08-10T02:11:26.188502" level="INFO">Repeating keyword, round 331/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.188972" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.188637" elapsed="0.001448"/>
</kw>
<msg time="2026-08-10T02:11:26.190143" level="INFO">Repeating keyword, round 332/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.190755" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.190276" elapsed="0.001187"/>
</kw>
<msg time="2026-08-10T02:11:26.191522" level="INFO">Repeating keyword, round 333/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.191991" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.191656" elapsed="0.002855"/>
</kw>
<msg time="2026-08-10T02:11:26.194604" level="INFO">Repeating keyword, round 334/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.195317" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.194846" elapsed="0.001302"/>
</kw>
<msg time="2026-08-10T02:11:26.196227" level="INFO">Repeating keyword, round 335/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.196948" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.196480" elapsed="0.002009"/>
</kw>
<msg time="2026-08-10T02:11:26.198570" level="INFO">Repeating keyword, round 336/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.199225" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.198758" elapsed="0.001420"/>
</kw>
<msg time="2026-08-10T02:11:26.200258" level="INFO">Repeating keyword, round 337/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.201135" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.200650" elapsed="0.001839"/>
</kw>
<msg time="2026-08-10T02:11:26.202547" level="INFO">Repeating keyword, round 338/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.203098" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.202680" elapsed="0.001835"/>
</kw>
<msg time="2026-08-10T02:11:26.204583" level="INFO">Repeating keyword, round 339/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.205131" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.204738" elapsed="0.001642"/>
</kw>
<msg time="2026-08-10T02:11:26.206487" level="INFO">Repeating keyword, round 340/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.207270" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.206672" elapsed="0.001918"/>
</kw>
<msg time="2026-08-10T02:11:26.208656" level="INFO">Repeating keyword, round 341/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.209214" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.208816" elapsed="0.001596"/>
</kw>
<msg time="2026-08-10T02:11:26.210471" level="INFO">Repeating keyword, round 342/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.211032" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.210609" elapsed="0.001065"/>
</kw>
<msg time="2026-08-10T02:11:26.211732" level="INFO">Repeating keyword, round 343/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.212283" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.211936" elapsed="0.001518"/>
</kw>
<msg time="2026-08-10T02:11:26.213511" level="INFO">Repeating keyword, round 344/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.213979" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.213644" elapsed="0.001117"/>
</kw>
<msg time="2026-08-10T02:11:26.214822" level="INFO">Repeating keyword, round 345/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.215411" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.214956" elapsed="0.002096"/>
</kw>
<msg time="2026-08-10T02:11:26.217111" level="INFO">Repeating keyword, round 346/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.217655" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.217244" elapsed="0.001116"/>
</kw>
<msg time="2026-08-10T02:11:26.218496" level="INFO">Repeating keyword, round 347/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.218968" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.218632" elapsed="0.001828"/>
</kw>
<msg time="2026-08-10T02:11:26.220519" level="INFO">Repeating keyword, round 348/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.221036" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.220654" elapsed="0.001112"/>
</kw>
<msg time="2026-08-10T02:11:26.221824" level="INFO">Repeating keyword, round 349/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.222289" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.221957" elapsed="0.001610"/>
</kw>
<msg time="2026-08-10T02:11:26.223626" level="INFO">Repeating keyword, round 350/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.224088" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.223758" elapsed="0.002112"/>
</kw>
<msg time="2026-08-10T02:11:26.225957" level="INFO">Repeating keyword, round 351/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.226738" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.226199" elapsed="0.001369"/>
</kw>
<msg time="2026-08-10T02:11:26.227652" level="INFO">Repeating keyword, round 352/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.228466" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.227848" elapsed="0.001655"/>
</kw>
<msg time="2026-08-10T02:11:26.229588" level="INFO">Repeating keyword, round 353/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.231705" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.229787" elapsed="0.002798"/>
</kw>
<msg time="2026-08-10T02:11:26.232672" level="INFO">Repeating keyword, round 354/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.233252" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.232868" elapsed="0.001463"/>
</kw>
<msg time="2026-08-10T02:11:26.234413" level="INFO">Repeating keyword, round 355/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.234995" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.234548" elapsed="0.001043"/>
</kw>
<msg time="2026-08-10T02:11:26.235649" level="INFO">Repeating keyword, round 356/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.236116" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.235782" elapsed="0.001620"/>
</kw>
<msg time="2026-08-10T02:11:26.237461" level="INFO">Repeating keyword, round 357/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.238016" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.237597" elapsed="0.002255"/>
</kw>
<msg time="2026-08-10T02:11:26.239912" level="INFO">Repeating keyword, round 358/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.240447" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.240048" elapsed="0.001100"/>
</kw>
<msg time="2026-08-10T02:11:26.241210" level="INFO">Repeating keyword, round 359/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.241742" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.241405" elapsed="0.002238"/>
</kw>
<msg time="2026-08-10T02:11:26.243785" level="INFO">Repeating keyword, round 360/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.244836" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.244137" elapsed="0.001554"/>
</kw>
<msg time="2026-08-10T02:11:26.245772" level="INFO">Repeating keyword, round 361/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.246485" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.245961" elapsed="0.001210"/>
</kw>
<msg time="2026-08-10T02:11:26.247247" level="INFO">Repeating keyword, round 362/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.247934" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.247465" elapsed="0.002130"/>
</kw>
<msg time="2026-08-10T02:11:26.249704" level="INFO">Repeating keyword, round 363/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.250625" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.249949" elapsed="0.001524"/>
</kw>
<msg time="2026-08-10T02:11:26.251555" level="INFO">Repeating keyword, round 364/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.252244" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.251751" elapsed="0.002736"/>
</kw>
<msg time="2026-08-10T02:11:26.254650" level="INFO">Repeating keyword, round 365/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.255383" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.254852" elapsed="0.001356"/>
</kw>
<msg time="2026-08-10T02:11:26.256294" level="INFO">Repeating keyword, round 366/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.257184" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.256559" elapsed="0.002946"/>
</kw>
<msg time="2026-08-10T02:11:26.259593" level="INFO">Repeating keyword, round 367/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.260292" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.259793" elapsed="0.002684"/>
</kw>
<msg time="2026-08-10T02:11:26.262566" level="INFO">Repeating keyword, round 368/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.263319" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.262818" elapsed="0.001392"/>
</kw>
<msg time="2026-08-10T02:11:26.264294" level="INFO">Repeating keyword, round 369/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.265096" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.264520" elapsed="0.001734"/>
</kw>
<msg time="2026-08-10T02:11:26.266312" level="INFO">Repeating keyword, round 370/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.266817" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.266482" elapsed="0.000967"/>
</kw>
<msg time="2026-08-10T02:11:26.267507" level="INFO">Repeating keyword, round 371/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.267972" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.267641" elapsed="0.001490"/>
</kw>
<msg time="2026-08-10T02:11:26.269190" level="INFO">Repeating keyword, round 372/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.269980" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.269324" elapsed="0.001355"/>
</kw>
<msg time="2026-08-10T02:11:26.270738" level="INFO">Repeating keyword, round 373/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.271225" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.270873" elapsed="0.001987"/>
</kw>
<msg time="2026-08-10T02:11:26.272922" level="INFO">Repeating keyword, round 374/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.273431" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.273058" elapsed="0.002576"/>
</kw>
<msg time="2026-08-10T02:11:26.275692" level="INFO">Repeating keyword, round 375/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.276213" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.275827" elapsed="0.001156"/>
</kw>
<msg time="2026-08-10T02:11:26.277044" level="INFO">Repeating keyword, round 376/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.277552" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.277180" elapsed="0.001582"/>
</kw>
<msg time="2026-08-10T02:11:26.278820" level="INFO">Repeating keyword, round 377/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.279281" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.278952" elapsed="0.001497"/>
</kw>
<msg time="2026-08-10T02:11:26.280506" level="INFO">Repeating keyword, round 378/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.281164" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.280639" elapsed="0.001317"/>
</kw>
<msg time="2026-08-10T02:11:26.282019" level="INFO">Repeating keyword, round 379/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.282897" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.282373" elapsed="0.002714"/>
</kw>
<msg time="2026-08-10T02:11:26.285168" level="INFO">Repeating keyword, round 380/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.285928" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.285456" elapsed="0.001361"/>
</kw>
<msg time="2026-08-10T02:11:26.286901" level="INFO">Repeating keyword, round 381/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.287652" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.287111" elapsed="0.002385"/>
</kw>
<msg time="2026-08-10T02:11:26.289576" level="INFO">Repeating keyword, round 382/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.290231" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.289761" elapsed="0.001699"/>
</kw>
<msg time="2026-08-10T02:11:26.291519" level="INFO">Repeating keyword, round 383/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.291995" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.291655" elapsed="0.001057"/>
</kw>
<msg time="2026-08-10T02:11:26.292770" level="INFO">Repeating keyword, round 384/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.293322" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.292902" elapsed="0.001371"/>
</kw>
<msg time="2026-08-10T02:11:26.294337" level="INFO">Repeating keyword, round 385/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.294840" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.294505" elapsed="0.001446"/>
</kw>
<msg time="2026-08-10T02:11:26.296009" level="INFO">Repeating keyword, round 386/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.296584" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.296144" elapsed="0.001141"/>
</kw>
<msg time="2026-08-10T02:11:26.297361" level="INFO">Repeating keyword, round 387/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.298791" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.298406" elapsed="0.001130"/>
</kw>
<msg time="2026-08-10T02:11:26.299602" level="INFO">Repeating keyword, round 388/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.300070" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.299737" elapsed="0.001950"/>
</kw>
<msg time="2026-08-10T02:11:26.301745" level="INFO">Repeating keyword, round 389/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.302265" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.301879" elapsed="0.001287"/>
</kw>
<msg time="2026-08-10T02:11:26.303221" level="INFO">Repeating keyword, round 390/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.303765" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.303387" elapsed="0.001082"/>
</kw>
<msg time="2026-08-10T02:11:26.304525" level="INFO">Repeating keyword, round 391/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.304989" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.304658" elapsed="0.002399"/>
</kw>
<msg time="2026-08-10T02:11:26.307116" level="INFO">Repeating keyword, round 392/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.307676" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.307250" elapsed="0.001164"/>
</kw>
<msg time="2026-08-10T02:11:26.308473" level="INFO">Repeating keyword, round 393/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.308941" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.308608" elapsed="0.001851"/>
</kw>
<msg time="2026-08-10T02:11:26.310517" level="INFO">Repeating keyword, round 394/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.310993" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.310651" elapsed="0.001058"/>
</kw>
<msg time="2026-08-10T02:11:26.311766" level="INFO">Repeating keyword, round 395/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.312278" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.311899" elapsed="0.001120"/>
</kw>
<msg time="2026-08-10T02:11:26.313077" level="INFO">Repeating keyword, round 396/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.313650" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.313273" elapsed="0.001492"/>
</kw>
<msg time="2026-08-10T02:11:26.314822" level="INFO">Repeating keyword, round 397/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.315416" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.314961" elapsed="0.001166"/>
</kw>
<msg time="2026-08-10T02:11:26.316184" level="INFO">Repeating keyword, round 398/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.316701" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.316316" elapsed="0.001835"/>
</kw>
<msg time="2026-08-10T02:11:26.318208" level="INFO">Repeating keyword, round 399/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.318747" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.318365" elapsed="0.001110"/>
</kw>
<msg time="2026-08-10T02:11:26.319588" level="INFO">Repeating keyword, round 400/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.320053" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.319721" elapsed="0.002059"/>
</kw>
<msg time="2026-08-10T02:11:26.321840" level="INFO">Repeating keyword, round 401/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.322491" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.321975" elapsed="0.001209"/>
</kw>
<msg time="2026-08-10T02:11:26.323243" level="INFO">Repeating keyword, round 402/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.323733" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.323400" elapsed="0.001283"/>
</kw>
<msg time="2026-08-10T02:11:26.324742" level="INFO">Repeating keyword, round 403/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.325209" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.324877" elapsed="0.001814"/>
</kw>
<msg time="2026-08-10T02:11:26.326760" level="INFO">Repeating keyword, round 404/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.327279" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.326894" elapsed="0.001097"/>
</kw>
<msg time="2026-08-10T02:11:26.328051" level="INFO">Repeating keyword, round 405/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.328544" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.328185" elapsed="0.001304"/>
</kw>
<msg time="2026-08-10T02:11:26.329546" level="INFO">Repeating keyword, round 406/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.330015" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.329681" elapsed="0.002271"/>
</kw>
<msg time="2026-08-10T02:11:26.332010" level="INFO">Repeating keyword, round 407/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.332547" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.332144" elapsed="0.002031"/>
</kw>
<msg time="2026-08-10T02:11:26.334233" level="INFO">Repeating keyword, round 408/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.334814" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.334427" elapsed="0.001122"/>
</kw>
<msg time="2026-08-10T02:11:26.335614" level="INFO">Repeating keyword, round 409/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.336077" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.335747" elapsed="0.001457"/>
</kw>
<msg time="2026-08-10T02:11:26.337260" level="INFO">Repeating keyword, round 410/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.337794" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.337460" elapsed="0.002245"/>
</kw>
<msg time="2026-08-10T02:11:26.339786" level="INFO">Repeating keyword, round 411/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.340530" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.340018" elapsed="0.001376"/>
</kw>
<msg time="2026-08-10T02:11:26.341484" level="INFO">Repeating keyword, round 412/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.342147" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.341674" elapsed="0.002486"/>
</kw>
<msg time="2026-08-10T02:11:26.344240" level="INFO">Repeating keyword, round 413/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.344985" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.344502" elapsed="0.001564"/>
</kw>
<msg time="2026-08-10T02:11:26.346199" level="INFO">Repeating keyword, round 414/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.347324" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.346552" elapsed="0.001988"/>
</kw>
<msg time="2026-08-10T02:11:26.348662" level="INFO">Repeating keyword, round 415/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.349808" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.348954" elapsed="0.003449"/>
</kw>
<msg time="2026-08-10T02:11:26.352496" level="INFO">Repeating keyword, round 416/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.353278" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.352772" elapsed="0.001417"/>
</kw>
<msg time="2026-08-10T02:11:26.354272" level="INFO">Repeating keyword, round 417/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.354993" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.354502" elapsed="0.002644"/>
</kw>
<msg time="2026-08-10T02:11:26.357295" level="INFO">Repeating keyword, round 418/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.358133" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.357666" elapsed="0.001215"/>
</kw>
<msg time="2026-08-10T02:11:26.358939" level="INFO">Repeating keyword, round 419/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.359437" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.359074" elapsed="0.001835"/>
</kw>
<msg time="2026-08-10T02:11:26.360968" level="INFO">Repeating keyword, round 420/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.361527" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.361102" elapsed="0.001422"/>
</kw>
<msg time="2026-08-10T02:11:26.362583" level="INFO">Repeating keyword, round 421/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.363055" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.362717" elapsed="0.001852"/>
</kw>
<msg time="2026-08-10T02:11:26.364628" level="INFO">Repeating keyword, round 422/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.365146" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.364761" elapsed="0.001186"/>
</kw>
<msg time="2026-08-10T02:11:26.366013" level="INFO">Repeating keyword, round 423/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.366497" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.366145" elapsed="0.001845"/>
</kw>
<msg time="2026-08-10T02:11:26.368048" level="INFO">Repeating keyword, round 424/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.368703" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.368182" elapsed="0.001233"/>
</kw>
<msg time="2026-08-10T02:11:26.369474" level="INFO">Repeating keyword, round 425/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.369957" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.369625" elapsed="0.002033"/>
</kw>
<msg time="2026-08-10T02:11:26.371717" level="INFO">Repeating keyword, round 426/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.372234" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.371851" elapsed="0.001122"/>
</kw>
<msg time="2026-08-10T02:11:26.373030" level="INFO">Repeating keyword, round 427/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.373534" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.373165" elapsed="0.001901"/>
</kw>
<msg time="2026-08-10T02:11:26.375123" level="INFO">Repeating keyword, round 428/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.375679" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.375256" elapsed="0.001138"/>
</kw>
<msg time="2026-08-10T02:11:26.376450" level="INFO">Repeating keyword, round 429/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.376911" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.376582" elapsed="0.001857"/>
</kw>
<msg time="2026-08-10T02:11:26.378501" level="INFO">Repeating keyword, round 430/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.379020" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.378636" elapsed="0.001142"/>
</kw>
<msg time="2026-08-10T02:11:26.379835" level="INFO">Repeating keyword, round 431/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.380307" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.379973" elapsed="0.001955"/>
</kw>
<msg time="2026-08-10T02:11:26.381990" level="INFO">Repeating keyword, round 432/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.382532" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.382123" elapsed="0.001130"/>
</kw>
<msg time="2026-08-10T02:11:26.383309" level="INFO">Repeating keyword, round 433/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.383795" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.383463" elapsed="0.001816"/>
</kw>
<msg time="2026-08-10T02:11:26.385374" level="INFO">Repeating keyword, round 434/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.385911" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.385510" elapsed="0.001297"/>
</kw>
<msg time="2026-08-10T02:11:26.386863" level="INFO">Repeating keyword, round 435/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.387406" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.386995" elapsed="0.001481"/>
</kw>
<msg time="2026-08-10T02:11:26.388535" level="INFO">Repeating keyword, round 436/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.389052" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.388668" elapsed="0.002114"/>
</kw>
<msg time="2026-08-10T02:11:26.390856" level="INFO">Repeating keyword, round 437/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.391485" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.391063" elapsed="0.001434"/>
</kw>
<msg time="2026-08-10T02:11:26.392554" level="INFO">Repeating keyword, round 438/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.393021" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.392687" elapsed="0.002044"/>
</kw>
<msg time="2026-08-10T02:11:26.394789" level="INFO">Repeating keyword, round 439/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.395306" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.394923" elapsed="0.001129"/>
</kw>
<msg time="2026-08-10T02:11:26.396110" level="INFO">Repeating keyword, round 440/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.396644" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.396244" elapsed="0.002960"/>
</kw>
<msg time="2026-08-10T02:11:26.399286" level="INFO">Repeating keyword, round 441/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.400036" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.399505" elapsed="0.001394"/>
</kw>
<msg time="2026-08-10T02:11:26.400978" level="INFO">Repeating keyword, round 442/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.401673" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.401163" elapsed="0.002574"/>
</kw>
<msg time="2026-08-10T02:11:26.403818" level="INFO">Repeating keyword, round 443/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.404560" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.404003" elapsed="0.001419"/>
</kw>
<msg time="2026-08-10T02:11:26.405498" level="INFO">Repeating keyword, round 444/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.406173" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.405681" elapsed="0.002016"/>
</kw>
<msg time="2026-08-10T02:11:26.407756" level="INFO">Repeating keyword, round 445/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.408290" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.407889" elapsed="0.001145"/>
</kw>
<msg time="2026-08-10T02:11:26.409091" level="INFO">Repeating keyword, round 446/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.409581" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.409226" elapsed="0.001881"/>
</kw>
<msg time="2026-08-10T02:11:26.411165" level="INFO">Repeating keyword, round 447/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.411848" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.411298" elapsed="0.001428"/>
</kw>
<msg time="2026-08-10T02:11:26.412783" level="INFO">Repeating keyword, round 448/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.413254" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.412917" elapsed="0.001611"/>
</kw>
<msg time="2026-08-10T02:11:26.414601" level="INFO">Repeating keyword, round 449/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.415185" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.414762" elapsed="0.002371"/>
</kw>
<msg time="2026-08-10T02:11:26.417190" level="INFO">Repeating keyword, round 450/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.417732" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.417323" elapsed="0.001414"/>
</kw>
<msg time="2026-08-10T02:11:26.418795" level="INFO">Repeating keyword, round 451/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.419269" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.418931" elapsed="0.001994"/>
</kw>
<msg time="2026-08-10T02:11:26.420982" level="INFO">Repeating keyword, round 452/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.421523" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.421116" elapsed="0.001147"/>
</kw>
<msg time="2026-08-10T02:11:26.422416" level="INFO">Repeating keyword, round 453/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.422886" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.422554" elapsed="0.001888"/>
</kw>
<msg time="2026-08-10T02:11:26.424501" level="INFO">Repeating keyword, round 454/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.425017" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.424635" elapsed="0.001226"/>
</kw>
<msg time="2026-08-10T02:11:26.425920" level="INFO">Repeating keyword, round 455/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.426449" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.426093" elapsed="0.001852"/>
</kw>
<msg time="2026-08-10T02:11:26.428004" level="INFO">Repeating keyword, round 456/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.428559" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.428137" elapsed="0.001148"/>
</kw>
<msg time="2026-08-10T02:11:26.429369" level="INFO">Repeating keyword, round 457/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.429842" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.429510" elapsed="0.001163"/>
</kw>
<msg time="2026-08-10T02:11:26.430732" level="INFO">Repeating keyword, round 458/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.431198" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.430865" elapsed="0.001842"/>
</kw>
<msg time="2026-08-10T02:11:26.432765" level="INFO">Repeating keyword, round 459/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.433277" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.432899" elapsed="0.001150"/>
</kw>
<msg time="2026-08-10T02:11:26.434108" level="INFO">Repeating keyword, round 460/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.434596" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.434241" elapsed="0.001851"/>
</kw>
<msg time="2026-08-10T02:11:26.436150" level="INFO">Repeating keyword, round 461/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.436730" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.436284" elapsed="0.001307"/>
</kw>
<msg time="2026-08-10T02:11:26.437648" level="INFO">Repeating keyword, round 462/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.438166" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.437781" elapsed="0.001934"/>
</kw>
<msg time="2026-08-10T02:11:26.439772" level="INFO">Repeating keyword, round 463/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.440283" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.439905" elapsed="0.001121"/>
</kw>
<msg time="2026-08-10T02:11:26.441088" level="INFO">Repeating keyword, round 464/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.441621" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.441224" elapsed="0.002162"/>
</kw>
<msg time="2026-08-10T02:11:26.443482" level="INFO">Repeating keyword, round 465/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.444003" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.443665" elapsed="0.002011"/>
</kw>
<msg time="2026-08-10T02:11:26.445734" level="INFO">Repeating keyword, round 466/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.446288" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.445868" elapsed="0.001167"/>
</kw>
<msg time="2026-08-10T02:11:26.447097" level="INFO">Repeating keyword, round 467/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.447604" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.447230" elapsed="0.002057"/>
</kw>
<msg time="2026-08-10T02:11:26.449383" level="INFO">Repeating keyword, round 468/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.449900" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.449519" elapsed="0.001261"/>
</kw>
<msg time="2026-08-10T02:11:26.450843" level="INFO">Repeating keyword, round 469/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.451315" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.450976" elapsed="0.001433"/>
</kw>
<msg time="2026-08-10T02:11:26.452466" level="INFO">Repeating keyword, round 470/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.453121" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.452599" elapsed="0.002128"/>
</kw>
<msg time="2026-08-10T02:11:26.454833" level="INFO">Repeating keyword, round 471/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.455375" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.454967" elapsed="0.001129"/>
</kw>
<msg time="2026-08-10T02:11:26.456153" level="INFO">Repeating keyword, round 472/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.456668" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.456290" elapsed="0.001888"/>
</kw>
<msg time="2026-08-10T02:11:26.458320" level="INFO">Repeating keyword, round 473/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.458889" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.458541" elapsed="0.001214"/>
</kw>
<msg time="2026-08-10T02:11:26.459814" level="INFO">Repeating keyword, round 474/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.460287" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.459948" elapsed="0.001440"/>
</kw>
<msg time="2026-08-10T02:11:26.461447" level="INFO">Repeating keyword, round 475/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.461994" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.461579" elapsed="0.001083"/>
</kw>
<msg time="2026-08-10T02:11:26.462720" level="INFO">Repeating keyword, round 476/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.463185" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.462850" elapsed="0.002551"/>
</kw>
<msg time="2026-08-10T02:11:26.465460" level="INFO">Repeating keyword, round 477/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.466031" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.465654" elapsed="0.001146"/>
</kw>
<msg time="2026-08-10T02:11:26.466858" level="INFO">Repeating keyword, round 478/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.467324" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.466991" elapsed="0.001491"/>
</kw>
<msg time="2026-08-10T02:11:26.468539" level="INFO">Repeating keyword, round 479/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.469030" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.468699" elapsed="0.001154"/>
</kw>
<msg time="2026-08-10T02:11:26.469911" level="INFO">Repeating keyword, round 480/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.470470" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.470078" elapsed="0.002786"/>
</kw>
<msg time="2026-08-10T02:11:26.472922" level="INFO">Repeating keyword, round 481/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.473479" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.473060" elapsed="0.002092"/>
</kw>
<msg time="2026-08-10T02:11:26.475209" level="INFO">Repeating keyword, round 482/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.475764" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.475381" elapsed="0.001550"/>
</kw>
<msg time="2026-08-10T02:11:26.476993" level="INFO">Repeating keyword, round 483/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.477489" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.477127" elapsed="0.001672"/>
</kw>
<msg time="2026-08-10T02:11:26.478856" level="INFO">Repeating keyword, round 484/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.479404" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.478997" elapsed="0.001761"/>
</kw>
<msg time="2026-08-10T02:11:26.480815" level="INFO">Repeating keyword, round 485/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.481282" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.480948" elapsed="0.001345"/>
</kw>
<msg time="2026-08-10T02:11:26.482374" level="INFO">Repeating keyword, round 486/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.482878" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.482538" elapsed="0.001906"/>
</kw>
<msg time="2026-08-10T02:11:26.484500" level="INFO">Repeating keyword, round 487/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.485017" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.484637" elapsed="0.001176"/>
</kw>
<msg time="2026-08-10T02:11:26.485869" level="INFO">Repeating keyword, round 488/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.486440" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.486000" elapsed="0.001943"/>
</kw>
<msg time="2026-08-10T02:11:26.488001" level="INFO">Repeating keyword, round 489/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.488548" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.488139" elapsed="0.001188"/>
</kw>
<msg time="2026-08-10T02:11:26.489407" level="INFO">Repeating keyword, round 490/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.489869" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.489540" elapsed="0.001899"/>
</kw>
<msg time="2026-08-10T02:11:26.491498" level="INFO">Repeating keyword, round 491/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.492013" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.491631" elapsed="0.001293"/>
</kw>
<msg time="2026-08-10T02:11:26.492991" level="INFO">Repeating keyword, round 492/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.493478" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.493126" elapsed="0.001662"/>
</kw>
<msg time="2026-08-10T02:11:26.494846" level="INFO">Repeating keyword, round 493/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.495489" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.494980" elapsed="0.002337"/>
</kw>
<msg time="2026-08-10T02:11:26.497399" level="INFO">Repeating keyword, round 494/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.497915" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.497533" elapsed="0.001200"/>
</kw>
<msg time="2026-08-10T02:11:26.498789" level="INFO">Repeating keyword, round 495/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.499250" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.498921" elapsed="0.001544"/>
</kw>
<msg time="2026-08-10T02:11:26.500522" level="INFO">Repeating keyword, round 496/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.500985" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.500653" elapsed="0.001142"/>
</kw>
<msg time="2026-08-10T02:11:26.501852" level="INFO">Repeating keyword, round 497/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.502391" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.501984" elapsed="0.002005"/>
</kw>
<msg time="2026-08-10T02:11:26.504049" level="INFO">Repeating keyword, round 498/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.504590" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.504185" elapsed="0.001178"/>
</kw>
<msg time="2026-08-10T02:11:26.505422" level="INFO">Repeating keyword, round 499/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.505888" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.505555" elapsed="0.002103"/>
</kw>
<msg time="2026-08-10T02:11:26.507717" level="INFO">Repeating keyword, round 500/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.508241" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.507853" elapsed="0.001153"/>
</kw>
<msg time="2026-08-10T02:11:26.509062" level="INFO">Repeating keyword, round 501/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.509555" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.509194" elapsed="0.002060"/>
</kw>
<msg time="2026-08-10T02:11:26.511316" level="INFO">Repeating keyword, round 502/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.511875" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.511491" elapsed="0.001262"/>
</kw>
<msg time="2026-08-10T02:11:26.512810" level="INFO">Repeating keyword, round 503/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.513316" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.512977" elapsed="0.001460"/>
</kw>
<msg time="2026-08-10T02:11:26.514495" level="INFO">Repeating keyword, round 504/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.515101" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.514662" elapsed="0.001975"/>
</kw>
<msg time="2026-08-10T02:11:26.516705" level="INFO">Repeating keyword, round 505/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.517221" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.516837" elapsed="0.001175"/>
</kw>
<msg time="2026-08-10T02:11:26.518127" level="INFO">Repeating keyword, round 506/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.518643" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.518262" elapsed="0.001857"/>
</kw>
<msg time="2026-08-10T02:11:26.520188" level="INFO">Repeating keyword, round 507/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.520742" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.520322" elapsed="0.001362"/>
</kw>
<msg time="2026-08-10T02:11:26.521743" level="INFO">Repeating keyword, round 508/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.522211" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.521878" elapsed="0.001490"/>
</kw>
<msg time="2026-08-10T02:11:26.523437" level="INFO">Repeating keyword, round 509/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.523989" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.523571" elapsed="0.001975"/>
</kw>
<msg time="2026-08-10T02:11:26.525615" level="INFO">Repeating keyword, round 510/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.526130" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.525750" elapsed="0.001265"/>
</kw>
<msg time="2026-08-10T02:11:26.527077" level="INFO">Repeating keyword, round 511/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.527570" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.527211" elapsed="0.001874"/>
</kw>
<msg time="2026-08-10T02:11:26.529152" level="INFO">Repeating keyword, round 512/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.529693" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.529287" elapsed="0.001237"/>
</kw>
<msg time="2026-08-10T02:11:26.530581" level="INFO">Repeating keyword, round 513/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.531111" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.530745" elapsed="0.002140"/>
</kw>
<msg time="2026-08-10T02:11:26.532954" level="INFO">Repeating keyword, round 514/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.533504" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.533093" elapsed="0.001210"/>
</kw>
<msg time="2026-08-10T02:11:26.534387" level="INFO">Repeating keyword, round 515/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.534880" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.534522" elapsed="0.002183"/>
</kw>
<msg time="2026-08-10T02:11:26.536772" level="INFO">Repeating keyword, round 516/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.537449" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.536907" elapsed="0.002262"/>
</kw>
<msg time="2026-08-10T02:11:26.539239" level="INFO">Repeating keyword, round 517/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.539801" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.539412" elapsed="0.001335"/>
</kw>
<msg time="2026-08-10T02:11:26.540809" level="INFO">Repeating keyword, round 518/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.541275" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.540942" elapsed="0.001451"/>
</kw>
<msg time="2026-08-10T02:11:26.542460" level="INFO">Repeating keyword, round 519/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.543027" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.542593" elapsed="0.002030"/>
</kw>
<msg time="2026-08-10T02:11:26.544680" level="INFO">Repeating keyword, round 520/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.545198" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.544813" elapsed="0.001165"/>
</kw>
<msg time="2026-08-10T02:11:26.546034" level="INFO">Repeating keyword, round 521/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.546542" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.546167" elapsed="0.001917"/>
</kw>
<msg time="2026-08-10T02:11:26.548155" level="INFO">Repeating keyword, round 522/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.548706" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.548287" elapsed="0.001215"/>
</kw>
<msg time="2026-08-10T02:11:26.549591" level="INFO">Repeating keyword, round 523/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.550068" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.549735" elapsed="0.002649"/>
</kw>
<msg time="2026-08-10T02:11:26.552489" level="INFO">Repeating keyword, round 524/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.553009" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.552623" elapsed="0.001182"/>
</kw>
<msg time="2026-08-10T02:11:26.553863" level="INFO">Repeating keyword, round 525/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.554359" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.554005" elapsed="0.001965"/>
</kw>
<msg time="2026-08-10T02:11:26.556038" level="INFO">Repeating keyword, round 526/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.556595" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.556172" elapsed="0.001339"/>
</kw>
<msg time="2026-08-10T02:11:26.557593" level="INFO">Repeating keyword, round 527/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.558243" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.557778" elapsed="0.002945"/>
</kw>
<msg time="2026-08-10T02:11:26.560804" level="INFO">Repeating keyword, round 528/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.561557" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.561033" elapsed="0.001476"/>
</kw>
<msg time="2026-08-10T02:11:26.562589" level="INFO">Repeating keyword, round 529/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.563290" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.562774" elapsed="0.002659"/>
</kw>
<msg time="2026-08-10T02:11:26.565515" level="INFO">Repeating keyword, round 530/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.566226" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.565758" elapsed="0.001391"/>
</kw>
<msg time="2026-08-10T02:11:26.567228" level="INFO">Repeating keyword, round 531/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.567907" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.567444" elapsed="0.002790"/>
</kw>
<msg time="2026-08-10T02:11:26.570315" level="INFO">Repeating keyword, round 532/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.571126" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.570575" elapsed="0.001549"/>
</kw>
<msg time="2026-08-10T02:11:26.572181" level="INFO">Repeating keyword, round 533/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.572671" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.572314" elapsed="0.001862"/>
</kw>
<msg time="2026-08-10T02:11:26.574233" level="INFO">Repeating keyword, round 534/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.574786" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.574397" elapsed="0.001227"/>
</kw>
<msg time="2026-08-10T02:11:26.575681" level="INFO">Repeating keyword, round 535/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.576149" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.575813" elapsed="0.001882"/>
</kw>
<msg time="2026-08-10T02:11:26.577756" level="INFO">Repeating keyword, round 536/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.578270" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.577891" elapsed="0.002301"/>
</kw>
<msg time="2026-08-10T02:11:26.580250" level="INFO">Repeating keyword, round 537/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.580822" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.580420" elapsed="0.001311"/>
</kw>
<msg time="2026-08-10T02:11:26.581789" level="INFO">Repeating keyword, round 538/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.582252" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.581921" elapsed="0.001438"/>
</kw>
<msg time="2026-08-10T02:11:26.583419" level="INFO">Repeating keyword, round 539/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.584088" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.583552" elapsed="0.002341"/>
</kw>
<msg time="2026-08-10T02:11:26.585951" level="INFO">Repeating keyword, round 540/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.586503" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.586084" elapsed="0.002142"/>
</kw>
<msg time="2026-08-10T02:11:26.588284" level="INFO">Repeating keyword, round 541/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.588892" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.588453" elapsed="0.001353"/>
</kw>
<msg time="2026-08-10T02:11:26.589864" level="INFO">Repeating keyword, round 542/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.590362" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.589997" elapsed="0.001482"/>
</kw>
<msg time="2026-08-10T02:11:26.591537" level="INFO">Repeating keyword, round 543/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.592136" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.591670" elapsed="0.002087"/>
</kw>
<msg time="2026-08-10T02:11:26.593816" level="INFO">Repeating keyword, round 544/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.594375" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.593948" elapsed="0.002134"/>
</kw>
<msg time="2026-08-10T02:11:26.596141" level="INFO">Repeating keyword, round 545/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.596697" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.596275" elapsed="0.001549"/>
</kw>
<msg time="2026-08-10T02:11:26.597883" level="INFO">Repeating keyword, round 546/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.598381" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.598017" elapsed="0.001469"/>
</kw>
<msg time="2026-08-10T02:11:26.599545" level="INFO">Repeating keyword, round 547/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.600096" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.599678" elapsed="0.002031"/>
</kw>
<msg time="2026-08-10T02:11:26.601766" level="INFO">Repeating keyword, round 548/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.602279" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.601899" elapsed="0.001171"/>
</kw>
<msg time="2026-08-10T02:11:26.603127" level="INFO">Repeating keyword, round 549/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.603743" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.603264" elapsed="0.002747"/>
</kw>
<msg time="2026-08-10T02:11:26.606068" level="INFO">Repeating keyword, round 550/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.606612" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.606201" elapsed="0.001257"/>
</kw>
<msg time="2026-08-10T02:11:26.607516" level="INFO">Repeating keyword, round 551/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.607986" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.607655" elapsed="0.002013"/>
</kw>
<msg time="2026-08-10T02:11:26.609727" level="INFO">Repeating keyword, round 552/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.610254" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.609861" elapsed="0.001203"/>
</kw>
<msg time="2026-08-10T02:11:26.611123" level="INFO">Repeating keyword, round 553/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.611660" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.611256" elapsed="0.001466"/>
</kw>
<msg time="2026-08-10T02:11:26.612885" level="INFO">Repeating keyword, round 554/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.613957" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.613206" elapsed="0.001739"/>
</kw>
<msg time="2026-08-10T02:11:26.615024" level="INFO">Repeating keyword, round 555/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.615767" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.615215" elapsed="0.002937"/>
</kw>
<msg time="2026-08-10T02:11:26.618233" level="INFO">Repeating keyword, round 556/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.618996" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.618504" elapsed="0.001489"/>
</kw>
<msg time="2026-08-10T02:11:26.620074" level="INFO">Repeating keyword, round 557/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.620904" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.620211" elapsed="0.002253"/>
</kw>
<msg time="2026-08-10T02:11:26.622522" level="INFO">Repeating keyword, round 558/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.622994" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.622657" elapsed="0.001797"/>
</kw>
<msg time="2026-08-10T02:11:26.624595" level="INFO">Repeating keyword, round 559/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.625075" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.624732" elapsed="0.001989"/>
</kw>
<msg time="2026-08-10T02:11:26.626791" level="INFO">Repeating keyword, round 560/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.627307" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.626958" elapsed="0.002028"/>
</kw>
<msg time="2026-08-10T02:11:26.629057" level="INFO">Repeating keyword, round 561/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.629609" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.629197" elapsed="0.001278"/>
</kw>
<msg time="2026-08-10T02:11:26.630534" level="INFO">Repeating keyword, round 562/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.631152" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.630669" elapsed="0.001543"/>
</kw>
<msg time="2026-08-10T02:11:26.632271" level="INFO">Repeating keyword, round 563/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.632771" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.632432" elapsed="0.001020"/>
</kw>
<msg time="2026-08-10T02:11:26.633510" level="INFO">Repeating keyword, round 564/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.633981" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.633645" elapsed="0.001816"/>
</kw>
<msg time="2026-08-10T02:11:26.635518" level="INFO">Repeating keyword, round 565/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.636027" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.635688" elapsed="0.001464"/>
</kw>
<msg time="2026-08-10T02:11:26.637211" level="INFO">Repeating keyword, round 566/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.638126" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.637678" elapsed="0.001217"/>
</kw>
<msg time="2026-08-10T02:11:26.638950" level="INFO">Repeating keyword, round 567/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.639453" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.639085" elapsed="0.001902"/>
</kw>
<msg time="2026-08-10T02:11:26.641045" level="INFO">Repeating keyword, round 568/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.641878" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.641188" elapsed="0.001521"/>
</kw>
<msg time="2026-08-10T02:11:26.642765" level="INFO">Repeating keyword, round 569/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.643234" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.642898" elapsed="0.001288"/>
</kw>
<msg time="2026-08-10T02:11:26.644243" level="INFO">Repeating keyword, round 570/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.644735" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.644402" elapsed="0.001046"/>
</kw>
<msg time="2026-08-10T02:11:26.645510" level="INFO">Repeating keyword, round 571/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.645978" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.645646" elapsed="0.002061"/>
</kw>
<msg time="2026-08-10T02:11:26.647766" level="INFO">Repeating keyword, round 572/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.648324" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.647900" elapsed="0.001825"/>
</kw>
<msg time="2026-08-10T02:11:26.649816" level="INFO">Repeating keyword, round 573/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.650301" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.649964" elapsed="0.003221"/>
</kw>
<msg time="2026-08-10T02:11:26.653266" level="INFO">Repeating keyword, round 574/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.654048" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.653544" elapsed="0.003215"/>
</kw>
<msg time="2026-08-10T02:11:26.656855" level="INFO">Repeating keyword, round 575/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.657628" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.657090" elapsed="0.001506"/>
</kw>
<msg time="2026-08-10T02:11:26.658675" level="INFO">Repeating keyword, round 576/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.659700" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.658861" elapsed="0.001930"/>
</kw>
<msg time="2026-08-10T02:11:26.660920" level="INFO">Repeating keyword, round 577/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.661471" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.661055" elapsed="0.002062"/>
</kw>
<msg time="2026-08-10T02:11:26.663176" level="INFO">Repeating keyword, round 578/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.663719" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.663311" elapsed="0.001414"/>
</kw>
<msg time="2026-08-10T02:11:26.664782" level="INFO">Repeating keyword, round 579/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.665292" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.664958" elapsed="0.001953"/>
</kw>
<msg time="2026-08-10T02:11:26.666970" level="INFO">Repeating keyword, round 580/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.667506" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.667102" elapsed="0.001960"/>
</kw>
<msg time="2026-08-10T02:11:26.669121" level="INFO">Repeating keyword, round 581/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.669666" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.669255" elapsed="0.001366"/>
</kw>
<msg time="2026-08-10T02:11:26.670680" level="INFO">Repeating keyword, round 582/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.671145" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.670813" elapsed="0.002289"/>
</kw>
<msg time="2026-08-10T02:11:26.673162" level="INFO">Repeating keyword, round 583/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.673735" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.673396" elapsed="0.001333"/>
</kw>
<msg time="2026-08-10T02:11:26.674787" level="INFO">Repeating keyword, round 584/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.675301" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.674957" elapsed="0.002599"/>
</kw>
<msg time="2026-08-10T02:11:26.677616" level="INFO">Repeating keyword, round 585/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.679375" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.677750" elapsed="0.002457"/>
</kw>
<msg time="2026-08-10T02:11:26.680264" level="INFO">Repeating keyword, round 586/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.680780" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.680445" elapsed="0.001699"/>
</kw>
<msg time="2026-08-10T02:11:26.682202" level="INFO">Repeating keyword, round 587/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.682696" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.682355" elapsed="0.001964"/>
</kw>
<msg time="2026-08-10T02:11:26.684400" level="INFO">Repeating keyword, round 588/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.684921" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.684537" elapsed="0.001351"/>
</kw>
<msg time="2026-08-10T02:11:26.685949" level="INFO">Repeating keyword, round 589/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.686493" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.686085" elapsed="0.001989"/>
</kw>
<msg time="2026-08-10T02:11:26.688141" level="INFO">Repeating keyword, round 590/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.688703" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.688275" elapsed="0.001409"/>
</kw>
<msg time="2026-08-10T02:11:26.689741" level="INFO">Repeating keyword, round 591/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.690283" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.689939" elapsed="0.002728"/>
</kw>
<msg time="2026-08-10T02:11:26.692724" level="INFO">Repeating keyword, round 592/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.693247" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.692857" elapsed="0.001927"/>
</kw>
<msg time="2026-08-10T02:11:26.694841" level="INFO">Repeating keyword, round 593/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.695381" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.694974" elapsed="0.001423"/>
</kw>
<msg time="2026-08-10T02:11:26.696454" level="INFO">Repeating keyword, round 594/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.696978" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.696586" elapsed="0.002001"/>
</kw>
<msg time="2026-08-10T02:11:26.698646" level="INFO">Repeating keyword, round 595/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.699162" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.698779" elapsed="0.001090"/>
</kw>
<msg time="2026-08-10T02:11:26.699926" level="INFO">Repeating keyword, round 596/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.700458" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.700098" elapsed="0.001884"/>
</kw>
<msg time="2026-08-10T02:11:26.702041" level="INFO">Repeating keyword, round 597/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.702594" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.702176" elapsed="0.001376"/>
</kw>
<msg time="2026-08-10T02:11:26.703610" level="INFO">Repeating keyword, round 598/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.704101" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.703745" elapsed="0.002220"/>
</kw>
<msg time="2026-08-10T02:11:26.706023" level="INFO">Repeating keyword, round 599/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.706572" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.706157" elapsed="0.001894"/>
</kw>
<msg time="2026-08-10T02:11:26.708143" level="INFO">Repeating keyword, round 600/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-08-10T02:11:26.708704" level="INFO">Starting process:
nc -w 1 10.30.170.209 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-08-10T02:11:26.708278" elapsed="0.001306"/>
</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-08-10T02:11:25.603852" elapsed="1.105803"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-08-10T02:11:26.712372" 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-08-10T02:11:26.709817" elapsed="0.138394"/>
</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-08-10T02:11:26.854619" 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-08-10T02:11:26.854231" elapsed="0.000416"/>
</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-08-10T02:11:26.855864" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:26.855598" elapsed="0.000323"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:26.855574" elapsed="0.000374"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:26.856243" 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-08-10T02:11:26.856365" 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-08-10T02:11:26.856073" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:26.856899" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.209" 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-08-10T02:11:26.856516" elapsed="0.000429"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:26.857481" 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-08-10T02:11:26.857072" elapsed="0.000435"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:26.858364" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:26.858446" 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-08-10T02:11:26.858059" 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-08-10T02:11:26.858610" elapsed="0.000336"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:26.859747" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:28.167183" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:25 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:26.859433" elapsed="1.308027"/>
</kw>
<msg time="2026-08-10T02:11:28.167566" 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-08-10T02:11:26.859084" elapsed="1.308586"/>
</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-08-10T02:11:26.857692" elapsed="1.310129"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.168450" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-08-10T02:11:28.191888" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:11:28.192133" level="INFO">${stdout} = 4279</msg>
<msg time="2026-08-10T02:11:28.192232" 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-08-10T02:11:28.168093" elapsed="0.024189"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:28.192632" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.194050" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:28.193432" 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-08-10T02:11:28.194678" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:28.194376" elapsed="0.000411"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:28.194296" elapsed="0.000541"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:28.195181" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:11:28.194951" elapsed="0.000361"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:28.194919" elapsed="0.000489"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:28.195484" 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-08-10T02:11:28.200157" elapsed="0.000479"/>
</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-08-10T02:11:28.200823" elapsed="0.000214"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:28.201201" elapsed="0.000137"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:11:28.196113" elapsed="0.005318"/>
</kw>
<msg time="2026-08-10T02:11:28.201595" level="INFO">${output} = 4279</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-08-10T02:11:26.854973" elapsed="1.346656"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-08-10T02:11:28.202120" level="INFO">${pid} = 4279</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-08-10T02:11:28.201836" elapsed="0.000341"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-08-10T02:11:28.202244" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:11:28.202474" level="INFO">${output} = 4279</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-08-10T02:11:26.852073" elapsed="1.350436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.203044" level="INFO">4279</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:28.202703" elapsed="0.000403"/>
</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-08-10T02:11:28.206616" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:28.206264" elapsed="0.000431"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:28.206237" elapsed="0.000491"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.207085" 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-08-10T02:11:28.207226" 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-08-10T02:11:28.206893" elapsed="0.000362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.207773" level="INFO">Attempting to execute command "netstat -na | grep 6633" on remote system "10.30.170.209" 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-08-10T02:11:28.207396" elapsed="0.000422"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.208303" 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-08-10T02:11:28.207944" elapsed="0.000385"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.209221" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:28.209298" 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-08-10T02:11:28.208944" elapsed="0.000378"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:11:28.209469" elapsed="0.000322"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.210597" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:28.541094" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:28 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:28.210268" elapsed="0.330920"/>
</kw>
<msg time="2026-08-10T02:11:28.541251" 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-08-10T02:11:28.209929" elapsed="0.331381"/>
</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-08-10T02:11:28.208581" elapsed="0.332839"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.541756" level="INFO">Executing command 'netstat -na | grep 6633'.</msg>
<msg time="2026-08-10T02:11:28.554764" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-08-10T02:11:28.554876" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:11:28.554920" 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-08-10T02:11:28.541570" elapsed="0.013374"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:28.555079" elapsed="0.000229"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.555737" 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-08-10T02:11:28.555471" elapsed="0.000310"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:28.555976" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:28.555851" elapsed="0.000172"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:28.555831" elapsed="0.000214"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:28.556200" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-08-10T02:11:28.556096" elapsed="0.000198"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:28.556081" elapsed="0.000237"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:28.556377" 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-08-10T02:11:28.558741" elapsed="0.000314"/>
</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-08-10T02:11:28.559189" elapsed="0.000168"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:28.559476" elapsed="0.000095"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:11:28.556658" elapsed="0.002963"/>
</kw>
<msg time="2026-08-10T02:11:28.559738" 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-08-10T02:11:28.203566" elapsed="0.356196"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.560143" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:28.559901" elapsed="0.000284"/>
</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-08-10T02:11:26.848563" elapsed="1.711712"/>
</kw>
<kw name="Get Process Thread Count On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.564790" level="INFO">${cmd} = ps --no-headers -o nlwp 4279</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-08-10T02:11:28.564024" elapsed="0.000824"/>
</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-08-10T02:11:28.566146" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:28.565900" elapsed="0.000340"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:28.565882" elapsed="0.000383"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.566541" 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-08-10T02:11:28.566642" 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-08-10T02:11:28.566404" elapsed="0.000264"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.567169" level="INFO">Attempting to execute command "ps --no-headers -o nlwp 4279" on remote system "10.30.170.209" 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-08-10T02:11:28.566790" elapsed="0.000424"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.567720" 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-08-10T02:11:28.567358" elapsed="0.000387"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.568600" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:28.568678" 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-08-10T02:11:28.568315" elapsed="0.000386"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:11:28.568828" elapsed="0.000320"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.569945" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:28.913131" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:28 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:28.569635" elapsed="0.343667"/>
</kw>
<msg time="2026-08-10T02:11:28.913412" 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-08-10T02:11:28.569286" elapsed="0.344213"/>
</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-08-10T02:11:28.567930" elapsed="0.345696"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.914144" level="INFO">Executing command 'ps --no-headers -o nlwp 4279'.</msg>
<msg time="2026-08-10T02:11:28.927210" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:11:28.927502" level="INFO">${stdout} =  169</msg>
<msg time="2026-08-10T02:11:28.927603" 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-08-10T02:11:28.913864" elapsed="0.013790"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:28.927958" elapsed="0.000767"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.929726" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:28.929052" elapsed="0.000767"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:28.930302" elapsed="0.000083"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:28.929994" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:28.929942" 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-08-10T02:11:28.930941" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:11:28.930701" elapsed="0.000369"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:28.930666" elapsed="0.000465"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:28.931213" 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-08-10T02:11:28.934811" elapsed="0.000461"/>
</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-08-10T02:11:28.935490" elapsed="0.000230"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:28.935885" elapsed="0.000132"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:11:28.931686" elapsed="0.004404"/>
</kw>
<msg time="2026-08-10T02:11:28.936259" level="INFO">${output} =  169</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-08-10T02:11:28.565303" elapsed="0.370990"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-08-10T02:11:28.936897" level="INFO">${thread_count} =  169</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-08-10T02:11:28.936598" elapsed="0.000334"/>
</kw>
<return>
<value>${thread_count}</value>
<status status="PASS" start="2026-08-10T02:11:28.936998" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:11:28.937216" level="INFO">${ending_thread_count} =  169</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-08-10T02:11:28.560476" elapsed="0.376774"/>
</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-08-10T02:11:28.947602" 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-08-10T02:11:28.947273" elapsed="0.000356"/>
</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-08-10T02:11:28.948836" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:28.948568" elapsed="0.000322"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:28.948549" elapsed="0.000365"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.949179" 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-08-10T02:11:28.949281" 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-08-10T02:11:28.949032" elapsed="0.000275"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.949824" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.209" 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-08-10T02:11:28.949447" elapsed="0.000423"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.950378" 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-08-10T02:11:28.949995" elapsed="0.000410"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:28.951283" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:28.951378" 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-08-10T02:11:28.950992" 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-08-10T02:11:28.951531" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:28.952648" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:29.277520" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:28 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:28.952319" elapsed="0.325307"/>
</kw>
<msg time="2026-08-10T02:11:29.277694" 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-08-10T02:11:28.951992" elapsed="0.325766"/>
</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-08-10T02:11:28.950621" elapsed="0.327232"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:29.278470" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-08-10T02:11:29.301460" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:11:29.301702" level="INFO">${stdout} = 4279</msg>
<msg time="2026-08-10T02:11:29.301803" 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-08-10T02:11:29.278021" elapsed="0.023833"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:29.302156" elapsed="0.000482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.303706" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:29.303067" elapsed="0.000734"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:29.304240" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:29.303961" elapsed="0.000416"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:29.303916" elapsed="0.000539"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:29.304813" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-08-10T02:11:29.304576" elapsed="0.000365"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:29.304542" elapsed="0.000451"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:29.305066" 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-08-10T02:11:29.309938" elapsed="0.000746"/>
</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-08-10T02:11:29.310984" elapsed="0.000334"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:29.311624" 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-08-10T02:11:29.305719" elapsed="0.006231"/>
</kw>
<msg time="2026-08-10T02:11:29.312211" level="INFO">${output} = 4279</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-08-10T02:11:28.947960" elapsed="0.364305"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-08-10T02:11:29.313145" level="INFO">${pid} = 4279</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-08-10T02:11:29.312688" elapsed="0.000508"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-08-10T02:11:29.313245" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:11:29.313412" level="INFO">${output} = 4279</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-08-10T02:11:28.945336" elapsed="0.368101"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.313823" level="INFO">4279</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:29.313578" 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-08-10T02:11:29.316337" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:29.316096" elapsed="0.000312"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:29.316078" elapsed="0.000354"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:29.316717" 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-08-10T02:11:29.316818" 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-08-10T02:11:29.316576" elapsed="0.000267"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.317359" level="INFO">Attempting to execute command "netstat -na | grep 6633" on remote system "10.30.170.209" 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-08-10T02:11:29.316965" elapsed="0.000441"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:29.317891" 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-08-10T02:11:29.317532" elapsed="0.000384"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.318755" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:29.318831" 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-08-10T02:11:29.318478" elapsed="0.000376"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:11:29.318979" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:29.320094" level="INFO">Logging into '10.30.170.209:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:29.652281" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:10:47 UTC 2026

  System load:  0.32               Processes:             122
  Usage of /:   14.0% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.209
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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

New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon Aug 10 02:11:29 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:29.319786" elapsed="0.332713"/>
</kw>
<msg time="2026-08-10T02:11:29.652575" 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-08-10T02:11:29.319461" elapsed="0.333187"/>
</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-08-10T02:11:29.318100" elapsed="0.334653"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:29.653192" level="INFO">Executing command 'netstat -na | grep 6633'.</msg>
<msg time="2026-08-10T02:11:29.666281" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-08-10T02:11:29.666517" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:11:29.666580" 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-08-10T02:11:29.652954" elapsed="0.013658"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:29.666801" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.667659" 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-08-10T02:11:29.667330" elapsed="0.000377"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:29.667938" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:29.667790" elapsed="0.000202"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:29.667765" elapsed="0.000250"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:29.668179" elapsed="0.000026"/>
</return>
<status status="PASS" start="2026-08-10T02:11:29.668074" elapsed="0.000165"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:29.668053" elapsed="0.000210"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:29.668296" 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-08-10T02:11:29.670623" elapsed="0.000330"/>
</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-08-10T02:11:29.671089" elapsed="0.000161"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:29.671388" elapsed="0.000098"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:11:29.668622" elapsed="0.002915"/>
</kw>
<msg time="2026-08-10T02:11:29.671666" 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-08-10T02:11:29.314188" elapsed="0.357505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.672082" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:29.671837" elapsed="0.000285"/>
</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-08-10T02:11:28.937499" elapsed="0.734681"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.672617" level="INFO">starting count:  162
ending count:  169</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-08-10T02:11:29.672307" elapsed="0.000355"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.673195" level="INFO">${acceptable_thread_count} = 192.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-08-10T02:11:29.672798" elapsed="0.000427"/>
</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-08-10T02:11:29.673383" elapsed="0.000491"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.675017" 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-08-10T02:11:29.674601" elapsed="0.000443"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-08-10T02:11:29.675258" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-08-10T02:11:29.675117" elapsed="0.000198"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:29.675098" elapsed="0.000259"/>
</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-08-10T02:11:29.675487" elapsed="0.000021"/>
</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-08-10T02:11:29.675634" 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-08-10T02:11:29.675784" elapsed="0.000019"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:29.675924" elapsed="0.000060"/>
</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-08-10T02:11:29.676107" 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-08-10T02:11:29.676240" 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-08-10T02:11:29.676389" 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-08-10T02:11:29.676593" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:29.676472" elapsed="0.000171"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:11:29.676455" elapsed="0.000211"/>
</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-08-10T02:11:29.674246" elapsed="0.002468"/>
</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-08-10T02:11:23.968415" elapsed="5.708344"/>
</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-08-10T02:11:23.933234" elapsed="5.743980"/>
</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-08-10T02:11:29.755853" 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-08-10T02:11:29.755629" elapsed="0.000271"/>
</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-08-10T02:11:29.758247" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:29.757951" elapsed="0.000354"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:29.757930" elapsed="0.000399"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:29.758643" 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-08-10T02:11:29.758748" 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-08-10T02:11:29.758499" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.759334" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:11:29.758956" elapsed="0.000444"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:29.759922" 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-08-10T02:11:29.759556" elapsed="0.000393"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:29.760817" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:29.760894" 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-08-10T02:11:29.760530" 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-08-10T02:11:29.761075" elapsed="0.000350"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:29.762254" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:30.467487" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:11:29 UTC 2026

  System load:  0.13               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:10:14 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:29.761942" elapsed="0.705717"/>
</kw>
<msg time="2026-08-10T02:11:30.467752" 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-08-10T02:11:29.761592" elapsed="0.706347"/>
</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-08-10T02:11:29.760163" elapsed="0.707900"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:30.468634" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:11:31.621300" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:11:31.621749" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:11:31.621853" 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-08-10T02:11:30.468357" elapsed="1.153555"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:31.622477" elapsed="0.000633"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:31.624318" 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-08-10T02:11:31.623655" elapsed="0.000823"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:31.624999" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:31.624655" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:31.624602" elapsed="0.000566"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:31.625561" elapsed="0.000074"/>
</return>
<status status="PASS" start="2026-08-10T02:11:31.625285" elapsed="0.000426"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:31.625251" elapsed="0.000513"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:31.625840" 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-08-10T02:11:31.630496" elapsed="0.000473"/>
</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-08-10T02:11:31.631200" elapsed="0.000298"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:31.631710" elapsed="0.000135"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:11:31.626600" elapsed="0.005319"/>
</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-08-10T02:11:29.757461" elapsed="1.874588"/>
</kw>
<msg time="2026-08-10T02:11:31.632126" 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-08-10T02:11:29.756892" elapsed="1.875310"/>
</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-08-10T02:11:29.756435" elapsed="1.875878"/>
</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-08-10T02:11:31.635177" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:31.634770" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:31.634743" elapsed="0.000589"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:31.635779" 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-08-10T02:11:31.635923" 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-08-10T02:11:31.635583" elapsed="0.000376"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:31.636580" 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.177" 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-08-10T02:11:31.636170" elapsed="0.000456"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:31.637231" 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-08-10T02:11:31.636855" elapsed="0.000404"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:11:31.638140" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:31.638218" 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-08-10T02:11:31.637851" elapsed="0.000391"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:11:31.638418" elapsed="0.000324"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:31.639620" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:31.978271" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:11:29 UTC 2026

  System load:  0.13               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:11:30 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:31.639262" elapsed="0.339211"/>
</kw>
<msg time="2026-08-10T02:11:31.978569" 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-08-10T02:11:31.638909" elapsed="0.339750"/>
</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-08-10T02:11:31.637495" elapsed="0.341291"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:11:31.979393" 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-08-10T02:11:32.022169" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:11:32.022466" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:11:32.022570" 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-08-10T02:11:31.979080" elapsed="0.043542"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:32.023011" elapsed="0.000520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:32.024644" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:32.023985" elapsed="0.000756"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:32.025273" elapsed="0.000044"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:32.024946" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:32.024864" elapsed="0.000615"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:11:32.025842" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-08-10T02:11:32.025603" elapsed="0.000371"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:32.025565" elapsed="0.000462"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:11:32.026102" 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-08-10T02:11:32.030652" elapsed="0.000344"/>
</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-08-10T02:11:32.031165" elapsed="0.000190"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:11:32.031505" 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-08-10T02:11:32.026853" elapsed="0.004801"/>
</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-08-10T02:11:31.634042" elapsed="0.397709"/>
</kw>
<msg time="2026-08-10T02:11:32.031807" 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-08-10T02:11:31.633230" elapsed="0.398632"/>
</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-08-10T02:11:31.632589" elapsed="0.399357"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-08-10T02:11:29.756102" elapsed="2.275901"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:11:32.036867" 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-08-10T02:11:32.036411" elapsed="0.000483"/>
</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-08-10T02:11:32.038618" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:11:32.038697" 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-08-10T02:11:32.038312" 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-08-10T02:11:32.038877" elapsed="0.000319"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:11:32.040049" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:11:32.428425" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:11:29 UTC 2026

  System load:  0.13               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:11:31 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:11:32.039735" elapsed="0.388899"/>
</kw>
<msg time="2026-08-10T02:11:32.428729" 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-08-10T02:11:32.039380" elapsed="0.389464"/>
</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-08-10T02:11:32.037870" elapsed="0.391114"/>
</kw>
<msg time="2026-08-10T02:11:32.429043" 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-08-10T02:11:32.037481" elapsed="0.391611"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:11:32.037123" elapsed="0.392055"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-08-10T02:11:32.429237" elapsed="0.000051"/>
</return>
<msg time="2026-08-10T02:11:32.429511" 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-08-10T02:11:32.035929" elapsed="0.393610"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:32.430449" 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-08-10T02:11:32.429907" elapsed="0.000587"/>
</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-08-10T02:11:32.432755" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:32.430593" elapsed="0.002218"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:32.430556" elapsed="0.002282"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:32.433322" level="INFO">Start mininet --topo tree,1 to 10.30.170.209</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:32.433010" elapsed="0.000379"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:11:32.436125" level="INFO">sudo mn --controller 'remote,ip=10.30.170.209,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-08-10T02:11:32.433566" elapsed="0.002615"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:11:32.669859" 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-08-10T02:11:32.436356" elapsed="0.233714"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:32.670995" 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-08-10T02:11:32.670565" elapsed="0.000480"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:11:32.673051" 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-08-10T02:11:32.671225" elapsed="0.001885"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:11:32.686575" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "ptcp:6654"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1-eth1
            Interface s1-eth1
        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-08-10T02:11:32.673271" elapsed="0.013369"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-08-10T02:11:32.686701" elapsed="0.000061"/>
</return>
<msg time="2026-08-10T02:11:32.686965" 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-08-10T02:11:29.753441" elapsed="2.933552"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:32.687736" 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-08-10T02:11:32.687353" elapsed="0.000425"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:32.688362" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ee4c5210&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-08-10T02:11:32.687939" elapsed="0.000629"/>
</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-08-10T02:11:32.701163" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:11:32.701619" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:11:32 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-08-10T02:11:32.702069" 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-08-10T02:11:32.689687" elapsed="0.012444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:32.708183" 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-08-10T02:11:32.702650" elapsed="0.005642"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:11:32.713105" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:11:32.713186" 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-08-10T02:11:32.708762" elapsed="0.004448"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:11:32.713686" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-08-10T02:11:32.713802" 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-08-10T02:11:32.713396" elapsed="0.000488">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-08-10T02:11:32.689391" elapsed="0.024610">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:33.727628" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:33.728073" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:11:33.728244" 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-08-10T02:11:33.716296" elapsed="0.011986"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.732594" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:33.728652" elapsed="0.004020"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.736257" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-08-10T02:11:33.736397" 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-08-10T02:11:33.732956" elapsed="0.003477"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.737162" 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-08-10T02:11:33.736758" elapsed="0.000485"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-08-10T02:11:33.715540" elapsed="0.021791"/>
</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-08-10T02:11:32.688745" elapsed="1.048678"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-08-10T02:11:29.753045" elapsed="3.984466"/>
</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-08-10T02:11:33.743721" 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-08-10T02:11:33.743898" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:33.743570" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:11:33.744585" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e67f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:11:33.744118" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:33.745091" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:11:33.744805" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:33.745596" 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-08-10T02:11:33.745304" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:33.746078" 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-08-10T02:11:33.745808" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:11:33.747118" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:33.746293" elapsed="0.000856"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.747699" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:33.747359" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.748271" 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-08-10T02:11:33.747933" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.748849" 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-08-10T02:11:33.748523" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.749452" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:33.749077" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.750003" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:33.749686" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.750579" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec3e67f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:33.750238" 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-08-10T02:11:33.743182" elapsed="0.007492"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.758889" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:11:33.758638" elapsed="0.000368"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:33.793491" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node013zn6afg8nyvi1we2bogj6e36n1.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-08-10T02:11:33.793645" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:11:33.793852" 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-08-10T02:11:33.759165" elapsed="0.034744"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.799378" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:33.794377" elapsed="0.005115"/>
</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-08-10T02:11:33.758184" elapsed="0.041445"/>
</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-08-10T02:11:33.811159" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:33.810820" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:33.842045" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:33.842472" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:11:33.842726" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:33.811359" elapsed="0.031424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.843857" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:33.843246" elapsed="0.000713"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.849780" 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-08-10T02:11:33.844419" elapsed="0.005584"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:33.853522" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:33.850172" elapsed="0.003407"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:33.850126" elapsed="0.003477"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:11:33.857396" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:11:33.857445" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:11:33.853786" elapsed="0.003682"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:33.859802" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:33.857545" elapsed="0.002313"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:33.857526" elapsed="0.002356"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:33.859916" elapsed="0.000036"/>
</return>
<msg time="2026-08-10T02:11:33.860122" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:11:33.860166" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:11:33.810396" elapsed="0.049793"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:33.862648" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:33.860790" elapsed="0.001904"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:33.860771" elapsed="0.001945"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.863324" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:33.862904" elapsed="0.000475"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.863935" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:33.863583" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:33.864009" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:11:33.864187" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:11:33.860456" 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-08-10T02:11:33.864425" elapsed="0.000398"/>
</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-08-10T02:11:33.809727" elapsed="0.055158"/>
</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-08-10T02:11:33.799998" elapsed="0.064935"/>
</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-08-10T02:11:33.877631" 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-08-10T02:11:33.877766" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:33.877493" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:11:33.878408" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfbc1850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:11:33.877982" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:33.878902" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:11:33.878624" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:33.879416" 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-08-10T02:11:33.879117" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:33.879898" 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-08-10T02:11:33.879629" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:11:33.880806" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:33.880112" elapsed="0.000725"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.881388" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:33.881029" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.881948" 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-08-10T02:11:33.881619" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.882596" 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-08-10T02:11:33.882220" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.883161" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:33.882836" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.883797" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:33.883460" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.884398" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfbc1850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:33.884042" 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-08-10T02:11:33.877117" elapsed="0.007380"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.885063" 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-08-10T02:11:33.884682" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.885539" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:11:33.885277" 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-08-10T02:11:33.894737" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:33.894406" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:33.906212" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:33.906586" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:11:33.906744" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:33.894925" elapsed="0.011854"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.907448" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:33.907052" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.911054" 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-08-10T02:11:33.907760" elapsed="0.003439"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:33.914260" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:33.911304" elapsed="0.003033"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:33.911274" elapsed="0.003115"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:11:33.918563" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:11:33.918609" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:11:33.914641" elapsed="0.003990"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:33.920773" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:33.918706" elapsed="0.002123"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:33.918687" elapsed="0.002166"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:33.920887" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:11:33.921088" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:11:33.921132" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:11:33.894024" elapsed="0.027130"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:33.923824" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:33.921761" elapsed="0.002109"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:33.921743" elapsed="0.002149"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.924508" 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-08-10T02:11:33.924080" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.925084" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:33.924735" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:33.925158" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:11:33.925354" 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-08-10T02:11:33.921428" elapsed="0.003954"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:11:33.925575" 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-08-10T02:11:33.893393" elapsed="0.032637"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.935000" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:33.934702" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:33.944854" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:33.945098" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:11:33.945222" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:33.935180" elapsed="0.010075"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.945964" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:33.945613" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.949708" 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-08-10T02:11:33.946275" elapsed="0.003599"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:33.952907" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:33.949971" elapsed="0.003004"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:33.949945" elapsed="0.003061"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:11:33.957748" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:11:33.957795" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:11:33.953253" elapsed="0.004565"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:33.960063" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:33.957894" elapsed="0.002224"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:33.957876" elapsed="0.002266"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:33.960175" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:11:33.960389" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:11:33.960434" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:11:33.934258" elapsed="0.026198"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:33.962875" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:33.961023" elapsed="0.001897"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:33.961005" elapsed="0.001936"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.963541" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:33.963125" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:33.964166" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:33.963810" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:33.964241" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:11:33.964440" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:11:33.960692" 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-08-10T02:11:33.964657" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:11:33.933612" elapsed="0.031492"/>
</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-08-10T02:11:33.873249" elapsed="0.091912"/>
</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-08-10T02:11:33.865099" elapsed="0.100119"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:34.000208" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:34.000312" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:11:34.000568" 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-08-10T02:11:33.972977" elapsed="0.027651"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.006031" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:34.001060" elapsed="0.005065"/>
</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-08-10T02:11:33.972566" elapsed="0.033684"/>
</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-08-10T02:11:34.016796" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:34.016496" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:34.025854" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:34.026077" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:11:34.026176" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:34.016976" elapsed="0.009226"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.027210" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:34.026643" elapsed="0.000667"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.032997" 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-08-10T02:11:34.027747" elapsed="0.005366"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:34.037147" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:34.033264" elapsed="0.003933"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:34.033223" elapsed="0.003996"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:11:34.040384" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:11:34.040431" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:11:34.037420" elapsed="0.003035"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:34.042743" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:34.040532" elapsed="0.002268"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:34.040513" elapsed="0.002311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:34.042857" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:11:34.043053" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:11:34.043096" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:11:34.016063" elapsed="0.027055"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:34.045584" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:34.043700" elapsed="0.001930"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:34.043682" elapsed="0.001971"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.046230" 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-08-10T02:11:34.045835" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.046825" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:34.046475" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:34.046900" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:11:34.047075" 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-08-10T02:11:34.043370" elapsed="0.003730"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:11:34.047296" elapsed="0.000401"/>
</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-08-10T02:11:34.015413" elapsed="0.032347"/>
</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-08-10T02:11:34.006654" elapsed="0.041153"/>
</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-08-10T02:11:34.061749" 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-08-10T02:11:34.061906" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:34.061607" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:11:34.062587" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2ed40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:11:34.062127" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:34.063090" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:11:34.062806" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:34.063662" 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-08-10T02:11:34.063383" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:34.064169" 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-08-10T02:11:34.063879" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:11:34.065106" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:34.064411" elapsed="0.000725"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.065705" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:34.065351" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.066266" 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-08-10T02:11:34.065939" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.066885" 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-08-10T02:11:34.066546" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.067459" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:34.067115" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.068053" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:34.067693" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.068644" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2ed40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:34.068290" 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-08-10T02:11:34.061217" elapsed="0.007527"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.069317" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:11:34.068930" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.069796" level="INFO">&lt;?xml version="1.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-08-10T02:11:34.069555" 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-08-10T02:11:34.079006" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:34.078699" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:34.090531" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:34.091117" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:11:34.091283" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:34.079190" elapsed="0.012132"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.091979" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:34.091625" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.096016" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:34.092329" elapsed="0.003787"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:11:34.099241" elapsed="0.000048"/>
</return>
<status status="PASS" start="2026-08-10T02:11:34.096226" elapsed="0.003141"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:34.096194" elapsed="0.003210"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:11:34.099675" 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-08-10T02:11:34.100036" elapsed="0.000068"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:34.099802" elapsed="0.000347"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:11:34.099780" elapsed="0.000402"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:34.100227" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:11:34.102278" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:11:34.102324" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:11:34.078316" elapsed="0.024051"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:34.104848" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:34.102963" elapsed="0.001931"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:34.102946" elapsed="0.001970"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.105541" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:34.105106" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.106114" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:34.105767" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:34.106190" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:11:34.106387" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:11:34.102626" elapsed="0.003787"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:11:34.106607" 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-08-10T02:11:34.077719" elapsed="0.029350"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.116040" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:34.115736" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:34.124009" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:34.124211" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:11:34.124314" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:34.116256" elapsed="0.008107"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.124813" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:34.124561" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.130320" 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-08-10T02:11:34.125033" elapsed="0.005529"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:34.134239" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:34.130720" elapsed="0.003569"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:34.130678" elapsed="0.003633"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:11:34.137566" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:11:34.137612" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:11:34.134509" elapsed="0.003126"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:34.139701" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:34.137712" elapsed="0.002045"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:34.137694" elapsed="0.002086"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:34.139813" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:11:34.140003" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:11:34.140046" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:11:34.115296" elapsed="0.024772"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:34.142553" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:34.140695" elapsed="0.001903"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:34.140678" elapsed="0.001942"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.143196" 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-08-10T02:11:34.142803" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:34.143796" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:34.143447" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:34.143871" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:11:34.144048" 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-08-10T02:11:34.140360" elapsed="0.003713"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:11:34.144281" 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-08-10T02:11:34.114651" elapsed="0.030099"/>
</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-08-10T02:11:34.055643" elapsed="0.089164"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:11:39.145477" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:11:34.144993" elapsed="5.000725"/>
</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-08-10T02:11:39.171196" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:39.172014" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:11:39.172269" level="INFO">${resp} = None</msg>
<msg time="2026-08-10T02:11:39.172330" level="FAIL">Url: http://10.30.170.209: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-08-10T02:11:39.160296" elapsed="0.012724">Url: http://10.30.170.209: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-08-10T02:11:39.176860" 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-08-10T02:11:39.173390" elapsed="0.003521">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-08-10T02:11:39.159795" elapsed="0.017304">Several failures occurred:

1) Url: http://10.30.170.209: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-08-10T02:11:39.146467" elapsed="0.030801"/>
</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-08-10T02:11:33.739569" elapsed="5.437800"/>
</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-08-10T02:11:33.739139" elapsed="5.438296"/>
</kw>
<var name="${i}">0</var>
<status status="PASS" start="2026-08-10T02:11:33.738810" elapsed="5.438670"/>
</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-08-10T02:11:39.183299" 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-08-10T02:11:39.183470" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:39.183150" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:11:39.184140" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfaf64d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:11:39.183693" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:39.184665" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:11:39.184376" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:39.185148" 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-08-10T02:11:39.184879" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:39.185642" 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-08-10T02:11:39.185373" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:11:39.186597" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:39.185856" elapsed="0.000771"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:39.187158" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:39.186824" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:39.187727" 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-08-10T02:11:39.187408" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:39.188321" 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-08-10T02:11:39.187961" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:39.188890" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:39.188569" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:39.189462" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:39.189122" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:39.190012" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfaf64d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:39.189696" 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-08-10T02:11:39.182786" elapsed="0.007326"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:39.198230" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:11:39.197974" elapsed="0.000372"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:45.432291" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node013zn6afg8nyvi1we2bogj6e36n1.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-08-10T02:11:45.432590" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:11:45.432902" 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-08-10T02:11:39.198508" elapsed="6.234459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.438462" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:45.433556" elapsed="0.004977"/>
</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-08-10T02:11:39.197541" elapsed="6.241090"/>
</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-08-10T02:11:45.450454" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:45.450117" elapsed="0.000364"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:45.459268" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:45.459593" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:11:45.459706" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:45.450786" elapsed="0.008946"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.460180" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:45.459926" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.462816" 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-08-10T02:11:45.460420" elapsed="0.002520"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:45.465144" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:45.463020" elapsed="0.002178"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.462997" elapsed="0.002225"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:11:45.469047" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:11:45.469096" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:11:45.465422" 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-08-10T02:11:45.472525" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:45.469197" elapsed="0.003385"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.469178" elapsed="0.003429"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:45.472641" elapsed="0.000034"/>
</return>
<msg time="2026-08-10T02:11:45.472870" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:11:45.472922" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:11:45.449677" elapsed="0.023269"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:45.475410" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:45.473557" elapsed="0.001898"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.473539" elapsed="0.001938"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.476069" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:45.475664" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.476663" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:45.476292" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:45.476738" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:11:45.476947" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:11:45.473197" 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-08-10T02:11:45.477167" elapsed="0.000412"/>
</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-08-10T02:11:45.448980" elapsed="0.028661"/>
</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-08-10T02:11:45.438920" elapsed="0.038770"/>
</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-08-10T02:11:45.490379" 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-08-10T02:11:45.490542" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:45.490218" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:11:45.491181" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff515d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:11:45.490761" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:45.491701" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:11:45.491418" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:45.492188" 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-08-10T02:11:45.491917" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:45.492689" 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-08-10T02:11:45.492419" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:11:45.493643" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:45.492903" elapsed="0.000772"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.494216" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:45.493870" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.494806" 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-08-10T02:11:45.494473" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.495440" 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-08-10T02:11:45.495078" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.495997" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:45.495673" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.496582" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:45.496228" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.497141" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff515d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:45.496814" 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-08-10T02:11:45.489862" elapsed="0.007403"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.497850" 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-08-10T02:11:45.497470" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.498301" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:11:45.498064" 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-08-10T02:11:45.507491" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:45.507157" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:45.517294" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:45.517589" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:11:45.517701" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:45.507674" elapsed="0.010053"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.518172" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:45.517922" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.520746" 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-08-10T02:11:45.518413" elapsed="0.002427"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:45.523029" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:45.520911" elapsed="0.002168"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.520891" elapsed="0.002209"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:11:45.526827" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:11:45.526877" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:11:45.523279" elapsed="0.003623"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:45.529043" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:45.526994" elapsed="0.002110"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.526972" elapsed="0.002157"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:45.529165" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:11:45.529397" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:11:45.529444" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:11:45.506803" elapsed="0.022665"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:45.532182" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:45.530128" elapsed="0.002102"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.530109" elapsed="0.002143"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.532887" 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-08-10T02:11:45.532464" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.533510" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:45.533125" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:45.533588" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:11:45.537797" 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-08-10T02:11:45.529763" elapsed="0.008066"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:11:45.538049" elapsed="0.000469"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:11:45.506199" elapsed="0.032386"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.547763" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:45.547432" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:45.559214" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:45.559629" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:11:45.559921" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:45.547957" elapsed="0.012034"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.561072" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:45.560481" elapsed="0.000697"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.566947" 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-08-10T02:11:45.561623" elapsed="0.005499"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:45.570238" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:45.567230" elapsed="0.003079"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.567200" elapsed="0.003141"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:11:45.575309" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:11:45.575375" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:11:45.570615" elapsed="0.004784"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:45.577632" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:45.575477" elapsed="0.002211"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.575459" elapsed="0.002253"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:45.577746" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:11:45.577943" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:11:45.577987" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:11:45.546982" elapsed="0.031027"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:45.580473" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:45.578628" elapsed="0.001891"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.578609" elapsed="0.001931"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.581125" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:45.580726" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.581723" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:45.581368" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:45.581798" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:11:45.581973" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:11:45.578273" elapsed="0.003725"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:11:45.582190" 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-08-10T02:11:45.546288" elapsed="0.036416"/>
</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-08-10T02:11:45.486015" elapsed="0.096747"/>
</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-08-10T02:11:45.477855" elapsed="0.104967"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:45.909647" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:45.909778" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:11:45.910025" 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-08-10T02:11:45.590655" elapsed="0.319432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.915869" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:45.910680" elapsed="0.005288"/>
</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-08-10T02:11:45.590152" elapsed="0.325949"/>
</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-08-10T02:11:45.927416" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:45.927080" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:45.934742" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:45.935041" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:11:45.935143" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:45.927600" elapsed="0.007569"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.935733" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:45.935391" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.939276" 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-08-10T02:11:45.936043" elapsed="0.003334"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:45.942460" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:45.939485" elapsed="0.003049"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.939455" elapsed="0.003112"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:11:45.946225" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:11:45.946272" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:11:45.942817" elapsed="0.003478"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:45.948662" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:45.946393" elapsed="0.002326"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.946374" elapsed="0.002369"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:45.948776" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:11:45.948974" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:11:45.949017" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:11:45.926629" elapsed="0.022410"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:45.951644" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:45.949630" elapsed="0.002062"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.949613" elapsed="0.002102"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.952338" 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-08-10T02:11:45.951912" elapsed="0.000471"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.952934" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:45.952583" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:45.953011" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:11:45.953192" 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-08-10T02:11:45.949275" 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-08-10T02:11:45.953430" 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-08-10T02:11:45.925946" elapsed="0.027947"/>
</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-08-10T02:11:45.916534" elapsed="0.037408"/>
</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-08-10T02:11:45.966098" 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-08-10T02:11:45.966263" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:45.965952" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:11:45.966940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1b6700&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:11:45.966510" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:45.967523" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:11:45.967163" elapsed="0.000387"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:45.968083" 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-08-10T02:11:45.967799" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:45.968608" 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-08-10T02:11:45.968304" elapsed="0.000330"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:11:45.969564" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:45.968829" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.970156" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:45.969797" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.970758" 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-08-10T02:11:45.970415" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.971361" 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-08-10T02:11:45.970995" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.971948" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:45.971613" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.972621" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:45.972192" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.973290" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec1b6700&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:45.972935" 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-08-10T02:11:45.965591" elapsed="0.007822"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.974001" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:11:45.973602" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.974497" level="INFO">&lt;?xml version="1.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-08-10T02:11:45.974222" 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-08-10T02:11:45.983840" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:45.983427" elapsed="0.000441"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:45.991227" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:45.991834" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:11:45.991974" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:45.984028" elapsed="0.007973"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.992476" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:45.992200" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:45.995312" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:45.992699" elapsed="0.002684"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:11:45.997594" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:11:45.995458" elapsed="0.002204"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:45.995438" elapsed="0.002248"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:11:45.997870" 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-08-10T02:11:45.998128" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:45.997960" elapsed="0.000220"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:11:45.997943" elapsed="0.000260"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:45.998235" elapsed="0.000013"/>
</return>
<msg time="2026-08-10T02:11:46.000209" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:11:46.000257" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:11:45.983044" elapsed="0.017237"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:46.002748" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:46.000891" elapsed="0.001904"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:46.000873" elapsed="0.001944"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:46.003429" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:46.003003" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:46.004102" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:46.003655" elapsed="0.000474"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:46.004181" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:11:46.004383" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:11:46.000550" elapsed="0.003860"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:11:46.004668" elapsed="0.000539"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:11:45.982442" elapsed="0.022851"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:11:46.016330" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:11:46.016028" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:11:46.024750" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:46.024968" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:11:46.025104" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:11:46.016534" elapsed="0.008606"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:46.025801" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:11:46.025449" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:46.029606" 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-08-10T02:11:46.026109" elapsed="0.003620"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:11:46.032911" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:46.029827" elapsed="0.003155"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:46.029801" elapsed="0.003212"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:11:46.037562" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:11:46.037628" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:11:46.033262" elapsed="0.004398"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:11:46.040582" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:11:46.037769" elapsed="0.002890"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:46.037743" elapsed="0.002950"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:11:46.040740" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:11:46.041009" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:11:46.041069" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:11:46.015582" elapsed="0.025518"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:11:46.044550" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:11:46.041920" elapsed="0.002694"/>
</branch>
<status status="PASS" start="2026-08-10T02:11:46.041895" elapsed="0.002749"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:46.045481" 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-08-10T02:11:46.044898" elapsed="0.000612"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:11:46.046060" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:11:46.045709" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:11:46.046134" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:11:46.046312" 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-08-10T02:11:46.041462" elapsed="0.004879"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:11:46.046556" 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-08-10T02:11:46.014925" elapsed="0.032075"/>
</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-08-10T02:11:45.961771" elapsed="0.085286"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:11:51.047711" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:11:46.047238" elapsed="5.000696"/>
</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-08-10T02:11:51.071826" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:11:51.072751" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:11:51.072979" level="INFO">${resp} = None</msg>
<msg time="2026-08-10T02:11:51.073046" level="FAIL">Url: http://10.30.170.209: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-08-10T02:11:51.063153" elapsed="0.010577">Url: http://10.30.170.209: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-08-10T02:11:51.077864" 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-08-10T02:11:51.074087" elapsed="0.003828">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-08-10T02:11:51.062637" elapsed="0.015478">Several failures occurred:

1) Url: http://10.30.170.209: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-08-10T02:11:51.048646" elapsed="0.029651"/>
</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-08-10T02:11:39.178420" elapsed="11.899992"/>
</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-08-10T02:11:39.177883" elapsed="11.900600"/>
</kw>
<var name="${i}">1</var>
<status status="PASS" start="2026-08-10T02:11:39.177627" elapsed="11.900904"/>
</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-08-10T02:11:51.085393" 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-08-10T02:11:51.085566" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:51.085221" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:11:51.086250" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfbd8bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:11:51.085788" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:51.086811" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:11:51.086512" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:51.087396" 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-08-10T02:11:51.087092" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:11:51.087904" 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-08-10T02:11:51.087623" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:11:51.088903" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:51.088123" elapsed="0.000811"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:51.089498" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:51.089134" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:51.090068" 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-08-10T02:11:51.089744" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:51.090659" 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-08-10T02:11:51.090300" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:51.091260" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:11:51.090894" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:51.091858" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:11:51.091519" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:11:51.092438" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfbd8bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:11:51.092095" 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-08-10T02:11:51.084849" elapsed="0.007687"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:11:51.100872" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:11:51.100567" elapsed="0.000409"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:00.638259" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node013zn6afg8nyvi1we2bogj6e36n1.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-08-10T02:12:00.638501" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:00.638780" 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-08-10T02:11:51.101136" elapsed="9.537704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.643756" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:00.639453" elapsed="0.004366"/>
</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-08-10T02:11:51.100104" elapsed="9.543810"/>
</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-08-10T02:12:00.655501" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:00.655154" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:00.666320" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:00.666723" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:00.666947" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:00.655689" elapsed="0.011325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.668296" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:00.667579" elapsed="0.000885"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.674665" 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-08-10T02:12:00.668922" elapsed="0.005999"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:00.678796" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:00.675103" elapsed="0.003763"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:00.675054" elapsed="0.003837"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:00.682823" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:00.682872" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:00.679114" elapsed="0.003781"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:00.685292" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:00.682977" elapsed="0.002390"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:00.682958" elapsed="0.002434"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:00.685427" elapsed="0.000038"/>
</return>
<msg time="2026-08-10T02:12:00.685643" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:00.685687" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:00.654708" elapsed="0.031001"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:00.688284" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:00.686366" elapsed="0.001963"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:00.686330" elapsed="0.002043"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.689127" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:00.688605" elapsed="0.000551"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.689754" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:00.689378" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:00.689831" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:12:00.690013" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:00.685996" elapsed="0.004043"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:00.690236" elapsed="0.000436"/>
</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-08-10T02:12:00.653974" elapsed="0.036761"/>
</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-08-10T02:12:00.644179" elapsed="0.046606"/>
</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-08-10T02:12:00.703818" 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-08-10T02:12:00.703997" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:00.703670" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:00.704677" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfaf5c10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:00.704217" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:00.705200" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:00.704897" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:00.705708" 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-08-10T02:12:00.705435" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:00.706193" 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-08-10T02:12:00.705923" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:00.707193" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:00.706477" elapsed="0.000747"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.707790" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:00.707440" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.708373" 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-08-10T02:12:00.708024" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.709046" 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-08-10T02:12:00.708687" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.709710" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:00.709363" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.710286" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:00.709950" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.710885" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfaf5c10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:00.710543" 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-08-10T02:12:00.703273" elapsed="0.007712"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.711585" 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-08-10T02:12:00.711173" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.712049" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:00.711803" 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-08-10T02:12:00.721283" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:00.720930" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:00.730073" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:00.730460" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:00.730621" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:00.721498" elapsed="0.009158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.731283" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:00.730932" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.735067" 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-08-10T02:12:00.731619" elapsed="0.003585"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:00.738292" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:00.735306" elapsed="0.003079"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:00.735279" elapsed="0.003138"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:00.743072" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:00.743117" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:00.738670" elapsed="0.004470"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:00.745248" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:00.743214" elapsed="0.002092"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:00.743195" elapsed="0.002135"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:00.745383" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:12:00.745581" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:00.745624" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:12:00.720575" elapsed="0.025071"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:00.748219" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:00.746220" elapsed="0.002045"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:00.746202" elapsed="0.002086"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.748887" 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-08-10T02:12:00.748489" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.749554" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:00.749113" elapsed="0.000477"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:00.749653" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:12:00.749841" 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-08-10T02:12:00.745883" elapsed="0.003984"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:00.750061" 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-08-10T02:12:00.719958" elapsed="0.030587"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.759636" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:00.759321" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:00.766524" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:00.766766" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:00.766894" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:00.759820" elapsed="0.007099"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.767381" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:00.767113" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.769994" 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-08-10T02:12:00.767603" elapsed="0.002492"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:00.772256" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:00.770164" elapsed="0.002141"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:00.770146" elapsed="0.002180"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:00.776106" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:00.776152" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:00.772523" elapsed="0.003652"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:00.779479" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:00.776251" elapsed="0.003284"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:00.776233" elapsed="0.003327"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:00.779593" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:00.779785" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:00.779830" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:00.758891" elapsed="0.020965"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:00.782276" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:00.780434" elapsed="0.001887"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:00.780416" elapsed="0.001943"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.782942" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:00.782546" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:00.783532" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:00.783166" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:00.783606" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:00.783782" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:00.780088" elapsed="0.003719"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:00.783998" 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-08-10T02:12:00.758226" elapsed="0.026235"/>
</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-08-10T02:12:00.699378" elapsed="0.085137"/>
</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-08-10T02:12:00.690966" elapsed="0.093603"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:00.999814" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:00.999935" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:01.000170" 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-08-10T02:12:00.792316" elapsed="0.207912"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.005931" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:01.000766" elapsed="0.005227"/>
</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-08-10T02:12:00.791910" elapsed="0.214168"/>
</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-08-10T02:12:01.017957" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:01.017627" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:01.026677" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:01.026974" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:01.027112" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:01.018139" elapsed="0.009009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.027807" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:01.027453" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.031394" 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-08-10T02:12:01.028116" elapsed="0.003353"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:01.034623" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:01.031571" elapsed="0.003127"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:01.031542" elapsed="0.003190"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:01.039323" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:12:01.039393" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:01.035031" elapsed="0.004387"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:01.041971" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:01.039506" elapsed="0.002529"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:01.039485" elapsed="0.002597"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:01.042140" elapsed="0.000041"/>
</return>
<msg time="2026-08-10T02:12:01.042384" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:12:01.042430" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:01.017191" elapsed="0.025262"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:01.045523" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:01.043167" elapsed="0.002409"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:01.043144" elapsed="0.002459"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.046398" 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-08-10T02:12:01.045870" elapsed="0.000560"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.047063" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:01.046671" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:01.047148" elapsed="0.000032"/>
</return>
<msg time="2026-08-10T02:12:01.047364" 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-08-10T02:12:01.042762" elapsed="0.004631"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:01.047633" elapsed="0.000450"/>
</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-08-10T02:12:01.016541" elapsed="0.031613"/>
</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-08-10T02:12:01.006324" elapsed="0.041888"/>
</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-08-10T02:12:01.061009" 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-08-10T02:12:01.061189" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:01.060865" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:01.061921" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2e020&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:01.061430" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:01.062454" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:01.062146" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:01.063000" 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-08-10T02:12:01.062726" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:01.063503" 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-08-10T02:12:01.063214" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:01.064436" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:01.063719" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.065013" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:01.064662" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.065596" 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-08-10T02:12:01.065243" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.069177" 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-08-10T02:12:01.065826" elapsed="0.003402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.069761" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:01.069437" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.070371" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:01.070021" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.070940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2e020&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:01.070607" 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-08-10T02:12:01.060507" elapsed="0.010530"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.071633" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:12:01.071221" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.072095" level="INFO">&lt;?xml version="1.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-08-10T02:12:01.071856" 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-08-10T02:12:01.081267" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:01.080956" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:01.089649" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:01.090418" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:01.090627" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:01.081468" elapsed="0.009197"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.091294" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:01.090941" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.095373" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:01.091632" elapsed="0.003817"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:12:01.098551" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-08-10T02:12:01.095550" elapsed="0.003094"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:01.095522" elapsed="0.003155"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:12:01.098891" 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-08-10T02:12:01.099150" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:01.098981" elapsed="0.000221"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:12:01.098965" elapsed="0.000260"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:01.099256" elapsed="0.000014"/>
</return>
<msg time="2026-08-10T02:12:01.101151" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:12:01.101196" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:12:01.080600" elapsed="0.020619"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:01.103663" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:01.101801" elapsed="0.001909"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:01.101783" elapsed="0.001949"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.104307" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:01.103913" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.104900" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:01.104550" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:01.104975" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:01.105152" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:01.101471" elapsed="0.003707"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:01.105396" 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-08-10T02:12:01.079991" elapsed="0.025857"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.114955" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:01.114655" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:01.122935" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:01.123273" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:01.123541" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:01.115137" elapsed="0.008461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.124630" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:01.124033" elapsed="0.000699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.130838" 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-08-10T02:12:01.125127" elapsed="0.005913"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:01.135355" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:01.131197" elapsed="0.004209"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:01.131155" elapsed="0.004273"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:01.138616" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:12:01.138663" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:01.135604" elapsed="0.003082"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:01.140758" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:01.138762" elapsed="0.002057"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:01.138744" elapsed="0.002099"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:01.140876" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:01.141070" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:12:01.141114" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:01.114222" elapsed="0.026915"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:01.143617" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:01.141716" elapsed="0.001946"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:01.141698" elapsed="0.001986"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.144432" 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-08-10T02:12:01.143868" elapsed="0.000591"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:01.145009" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:01.144658" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:01.145084" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:01.145262" 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-08-10T02:12:01.141387" elapsed="0.003900"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:01.145498" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:12:01.113548" elapsed="0.032393"/>
</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-08-10T02:12:01.056689" elapsed="0.089309"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.146694" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:12:01.146207" elapsed="5.000699"/>
</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-08-10T02:12:06.167780" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:06.168606" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:06.168823" level="INFO">${resp} = None</msg>
<msg time="2026-08-10T02:12:06.168882" level="FAIL">Url: http://10.30.170.209: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-08-10T02:12:06.159893" elapsed="0.009615">Url: http://10.30.170.209: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-08-10T02:12:06.173262" 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-08-10T02:12:06.169842" elapsed="0.003468">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-08-10T02:12:06.159426" elapsed="0.014091">Several failures occurred:

1) Url: http://10.30.170.209: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-08-10T02:12:06.147603" elapsed="0.026087"/>
</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-08-10T02:11:51.079555" elapsed="15.094215"/>
</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-08-10T02:11:51.078983" elapsed="15.094851"/>
</kw>
<var name="${i}">2</var>
<status status="PASS" start="2026-08-10T02:11:51.078689" elapsed="15.095190"/>
</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-08-10T02:12:06.180248" 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-08-10T02:12:06.180412" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:06.180102" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:06.181064" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2c9f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:06.180633" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:06.181589" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:06.181284" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:06.182072" 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-08-10T02:12:06.181804" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:06.182590" 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-08-10T02:12:06.182287" elapsed="0.000329"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:06.183540" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:06.182807" elapsed="0.000764"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.184103" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:06.183765" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.184674" 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-08-10T02:12:06.184350" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.185226" 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-08-10T02:12:06.184901" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.185785" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:06.185472" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.186351" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:06.186018" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.186936" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfe2c9f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:06.186615" 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-08-10T02:12:06.179735" elapsed="0.007298"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.195203" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:06.194939" elapsed="0.000362"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:06.208069" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node013zn6afg8nyvi1we2bogj6e36n1.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-08-10T02:12:06.208217" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:06.208469" 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-08-10T02:12:06.195476" elapsed="0.013052"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.213950" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:06.208960" elapsed="0.005087"/>
</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-08-10T02:12:06.194482" elapsed="0.019692"/>
</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-08-10T02:12:06.234566" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:06.234237" elapsed="0.000391"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:06.244980" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:06.245592" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:06.245842" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:06.234788" elapsed="0.011110"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.247033" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:06.246366" elapsed="0.000769"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.252988" 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-08-10T02:12:06.247567" elapsed="0.005632"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.256475" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.253399" elapsed="0.003129"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.253318" elapsed="0.003234"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:06.260296" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:06.260360" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:06.256729" elapsed="0.003656"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:06.262679" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:06.260462" elapsed="0.002273"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.260443" elapsed="0.002316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:06.262794" elapsed="0.000033"/>
</return>
<msg time="2026-08-10T02:12:06.262995" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:06.263038" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:06.233809" elapsed="0.029251"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.265495" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.263651" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.263632" elapsed="0.001931"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.266153" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:06.265749" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.266800" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:06.266402" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:06.266875" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:06.267051" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:06.263296" 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-08-10T02:12:06.267271" elapsed="0.000414"/>
</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-08-10T02:12:06.233147" elapsed="0.034600"/>
</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-08-10T02:12:06.214594" elapsed="0.053201"/>
</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-08-10T02:12:06.280431" 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-08-10T02:12:06.280563" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:06.280276" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:06.281189" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0eb5b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:06.280781" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:06.281701" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:06.281423" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:06.282182" 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-08-10T02:12:06.281916" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:06.282695" 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-08-10T02:12:06.282413" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:06.283596" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:06.282910" elapsed="0.000717"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.284155" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:06.283817" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.284728" 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-08-10T02:12:06.284400" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.285368" 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-08-10T02:12:06.284996" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.285937" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:06.285613" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.286514" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:06.286170" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.287109" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0eb5b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:06.286778" 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-08-10T02:12:06.279921" elapsed="0.007284"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.287787" 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-08-10T02:12:06.287407" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.288239" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:06.288002" 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-08-10T02:12:06.297326" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:06.297026" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:06.307610" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:06.307826" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:06.307939" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:06.297527" elapsed="0.010438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.308429" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:06.308159" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.311024" 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-08-10T02:12:06.308650" 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-08-10T02:12:06.314148" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.311241" elapsed="0.002976"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.311214" elapsed="0.003034"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:06.319214" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:06.319260" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:06.314517" elapsed="0.004765"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:06.321361" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:06.319374" elapsed="0.002045"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.319354" elapsed="0.002088"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:06.321477" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:06.321668" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:06.321711" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:12:06.296671" elapsed="0.025063"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.324295" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.322290" elapsed="0.002067"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.322272" elapsed="0.002108"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.324957" 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-08-10T02:12:06.324565" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.325546" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:06.325181" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:06.325621" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:06.325796" 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-08-10T02:12:06.321963" 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-08-10T02:12:06.326017" 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-08-10T02:12:06.296078" elapsed="0.030400"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.335417" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:06.335101" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:06.345484" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:06.345722" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:06.345840" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:06.335599" elapsed="0.010266"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.346875" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:06.346247" elapsed="0.000728"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.352772" 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-08-10T02:12:06.347411" elapsed="0.005587"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.356825" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.353153" elapsed="0.003721"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.353112" elapsed="0.003784"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:06.360590" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:06.360636" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:06.357075" 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-08-10T02:12:06.362907" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:06.360735" elapsed="0.002229"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.360717" elapsed="0.002271"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:06.363022" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:06.363213" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:06.363256" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:06.334655" elapsed="0.028624"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.365699" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.363856" elapsed="0.001888"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.363838" elapsed="0.001928"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.366362" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:06.365948" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.366951" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:06.366588" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:06.367026" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:06.367204" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:06.363527" elapsed="0.003702"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:06.367438" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:12:06.334008" elapsed="0.033877"/>
</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-08-10T02:12:06.276096" elapsed="0.091844"/>
</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-08-10T02:12:06.267961" elapsed="0.100032"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:06.384833" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:06.384878" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:06.384974" 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-08-10T02:12:06.375682" elapsed="0.009333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.388443" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:06.385281" elapsed="0.003221"/>
</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-08-10T02:12:06.375248" elapsed="0.013332"/>
</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-08-10T02:12:06.399971" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:06.399674" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:06.410374" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:06.410643" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:06.410780" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:06.400151" elapsed="0.010688"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.411488" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:06.411113" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.415057" 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-08-10T02:12:06.411797" elapsed="0.003334"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.418150" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.415226" elapsed="0.002992"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.415200" elapsed="0.003048"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:06.422900" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:12:06.422965" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:06.418523" elapsed="0.004474"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:06.425312" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:06.423105" elapsed="0.002283"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.423078" elapsed="0.002334"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:06.425446" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:06.425637" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:12:06.425680" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:06.399234" elapsed="0.026468"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.428108" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.426263" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.426246" elapsed="0.001929"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.428769" 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-08-10T02:12:06.428374" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.429359" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:06.428995" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:06.429436" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:12:06.429613" 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-08-10T02:12:06.425935" 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-08-10T02:12:06.429831" elapsed="0.000382"/>
</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-08-10T02:12:06.398605" elapsed="0.031671"/>
</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-08-10T02:12:06.388805" elapsed="0.041518"/>
</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-08-10T02:12:06.442518" 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-08-10T02:12:06.442645" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:06.442380" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:06.443285" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff50d10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:06.442875" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:06.443798" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:06.443521" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:06.444379" 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-08-10T02:12:06.444089" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:06.444867" 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-08-10T02:12:06.444595" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:06.445934" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:06.445080" elapsed="0.000884"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.446519" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:06.446157" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.447121" 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-08-10T02:12:06.446753" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.447714" 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-08-10T02:12:06.447372" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.448270" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:06.447946" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.448851" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:06.448521" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.449429" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff50d10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:06.449083" 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-08-10T02:12:06.441999" elapsed="0.007527"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.450089" level="INFO">${det} = &lt;?xml version="1.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-08-10T02:12:06.449710" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.450587" level="INFO">&lt;?xml version="1.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-08-10T02:12:06.450302" 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-08-10T02:12:06.459469" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:06.459154" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:06.467747" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:06.468888" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:06.469193" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:06.459650" elapsed="0.009601"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.470295" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:06.469724" elapsed="0.000706"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.475141" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:06.470821" elapsed="0.004392"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-08-10T02:12:06.478253" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:12:06.475309" elapsed="0.003056"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.475282" elapsed="0.003118"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-08-10T02:12:06.478652" 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-08-10T02:12:06.479051" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:06.478778" elapsed="0.000346"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:12:06.478755" elapsed="0.000400"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.479200" elapsed="0.000020"/>
</return>
<msg time="2026-08-10T02:12:06.481285" level="INFO">${presence_flow} = False</msg>
<msg time="2026-08-10T02:12:06.481329" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:12:06.458792" elapsed="0.022575"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.483807" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.481936" elapsed="0.001916"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.481919" elapsed="0.001955"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.484477" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:06.484056" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.485051" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:06.484701" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:06.485126" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:06.485303" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:06.481601" elapsed="0.003727"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:06.485538" 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-08-10T02:12:06.458208" elapsed="0.027777"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.495002" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:06.494676" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:06.503068" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:06.503220" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:06.503317" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:06.495183" elapsed="0.008183"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.503810" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:06.503562" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.511510" 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-08-10T02:12:06.504173" elapsed="0.007560"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.514107" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.511898" elapsed="0.002258"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.511851" elapsed="0.002327"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:06.517351" level="INFO">${pres} = False</msg>
<msg time="2026-08-10T02:12:06.517400" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:06.514371" elapsed="0.003053"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:06.519529" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:06.517500" elapsed="0.002086"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.517482" elapsed="0.002129"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:06.519645" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:06.519839" level="INFO">${presence_table} = False</msg>
<msg time="2026-08-10T02:12:06.519883" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:06.494234" elapsed="0.025671"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:06.522345" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:06.520486" elapsed="0.001906"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:06.520468" elapsed="0.001946"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.523009" 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-08-10T02:12:06.522598" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:06.523606" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:06.523234" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:06.523681" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:06.523859" 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-08-10T02:12:06.520137" elapsed="0.003747"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:06.524077" 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-08-10T02:12:06.493557" elapsed="0.030981"/>
</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-08-10T02:12:06.438090" elapsed="0.086504"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.525220" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:12:06.524772" elapsed="5.000714"/>
</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-08-10T02:12:11.551166" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:11.551809" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:11.551972" level="INFO">${resp} = None</msg>
<msg time="2026-08-10T02:12:11.552015" level="FAIL">Url: http://10.30.170.209: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-08-10T02:12:11.540578" elapsed="0.011936">Url: http://10.30.170.209: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-08-10T02:12:11.555259" 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-08-10T02:12:11.552772" elapsed="0.002521">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-08-10T02:12:11.539835" elapsed="0.015613">Several failures occurred:

1) Url: http://10.30.170.209: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-08-10T02:12:11.526184" elapsed="0.029409"/>
</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-08-10T02:12:06.174829" elapsed="5.380821"/>
</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-08-10T02:12:06.174270" elapsed="5.381427"/>
</kw>
<var name="${i}">3</var>
<status status="PASS" start="2026-08-10T02:12:06.174016" elapsed="5.381715"/>
</iter>
<var>${i}</var>
<value>${iteration}</value>
<status status="PASS" start="2026-08-10T02:11:33.738548" elapsed="37.817221"/>
</for>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.557011" 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-08-10T02:12:11.556581" elapsed="0.000458"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-08-10T02:12:11.557281" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-08-10T02:12:11.557123" elapsed="0.000240"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.557102" elapsed="0.000288"/>
</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-08-10T02:12:11.557581" 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-08-10T02:12:11.557758" 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-08-10T02:12:11.557939" 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-08-10T02:12:11.558112" elapsed="0.000019"/>
</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-08-10T02:12:11.558276" 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-08-10T02:12:11.558455" 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-08-10T02:12:11.558617" 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-08-10T02:12:11.558869" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:11.558697" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:12:11.558680" elapsed="0.000263"/>
</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-08-10T02:12:11.556182" elapsed="0.002810"/>
</kw>
<doc>Iterate on add and delete flow until alien ID is found in Operational Datastore.</doc>
<status status="PASS" start="2026-08-10T02:11:33.737612" elapsed="37.821425"/>
</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-08-10T02:12:11.565106" 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-08-10T02:12:11.565260" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:11.564958" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:11.565906" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff52750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:11.565495" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:11.566433" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:11.566129" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:11.566919" 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-08-10T02:12:11.566647" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:11.567418" 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-08-10T02:12:11.567132" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:11.568233" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:11.567633" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.568877" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:11.568498" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.569448" 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-08-10T02:12:11.569110" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.570020" 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-08-10T02:12:11.569696" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.570580" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:11.570249" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.571318" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:11.570818" elapsed="0.000566"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.571908" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dff52750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:11.571577" 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-08-10T02:12:11.564595" elapsed="0.007412"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.580062" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:11.579805" elapsed="0.000315"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:11.597695" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node013zn6afg8nyvi1we2bogj6e36n1.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-08-10T02:12:11.597760" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:11.597856" 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-08-10T02:12:11.580276" elapsed="0.017605"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.603248" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:11.598097" elapsed="0.005282"/>
</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-08-10T02:12:11.579354" elapsed="0.024158"/>
</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-08-10T02:12:11.616181" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:11.615864" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:11.623648" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:11.623922" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:11.624031" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:11.616380" elapsed="0.007677"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.624560" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:11.624254" elapsed="0.000353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.627137" 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-08-10T02:12:11.624786" elapsed="0.002413"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:11.629410" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:11.627270" elapsed="0.002197"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.627250" elapsed="0.002240"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:11.632778" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:11.632825" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:11.629669" elapsed="0.003180"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:11.635100" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:11.632926" elapsed="0.002229"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.632907" elapsed="0.002272"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:11.635213" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:11.635425" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:11.635470" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:11.615443" elapsed="0.020050"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:11.637947" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:11.636061" elapsed="0.001932"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.636043" elapsed="0.001972"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.638623" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:11.638201" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.639198" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:11.638850" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:11.639274" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:11.639470" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:11.635731" elapsed="0.003765"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:11.639691" elapsed="0.000393"/>
</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-08-10T02:12:11.614788" elapsed="0.025358"/>
</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-08-10T02:12:11.603889" elapsed="0.036305"/>
</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-08-10T02:12:11.652891" 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-08-10T02:12:11.653019" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:11.652750" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:11.653637" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0ebce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:11.653236" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:11.654129" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:11.653854" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:11.654634" 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-08-10T02:12:11.654361" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:11.655113" 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-08-10T02:12:11.654846" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:11.655886" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:11.655328" elapsed="0.000588"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.656467" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:11.656107" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.657041" 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-08-10T02:12:11.656711" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.657632" 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-08-10T02:12:11.657276" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.658185" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:11.657862" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.658766" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:11.658438" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.659327" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0ebce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:11.659000" 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-08-10T02:12:11.652362" elapsed="0.007092"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.660024" 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-08-10T02:12:11.659639" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.660534" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:11.660240" 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-08-10T02:12:11.669758" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:11.669457" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:11.676665" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:11.676886" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:11.676989" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:11.669941" elapsed="0.007074"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.677488" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:11.677209" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.680025" 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-08-10T02:12:11.677712" 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-08-10T02:12:11.682259" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:11.680159" elapsed="0.002149"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.680140" elapsed="0.002206"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:11.685443" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:11.685488" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:11.682527" elapsed="0.002984"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:11.687583" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:11.685585" elapsed="0.002052"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.685566" elapsed="0.002096"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:11.687696" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:11.687887" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:11.687931" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:12:11.669085" elapsed="0.018868"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:11.690401" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:11.688548" elapsed="0.001898"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.688528" elapsed="0.001940"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.691052" 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-08-10T02:12:11.690653" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.691646" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:11.691277" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:11.691723" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:11.691899" 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-08-10T02:12:11.688182" elapsed="0.003742"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:11.692117" 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-08-10T02:12:11.668477" elapsed="0.026909"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.704556" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:11.704223" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:11.712483" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:11.712771" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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-08-10T02:12:11.712889" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:11.704743" elapsed="0.008172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.713379" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:11.713109" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.715947" 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-08-10T02:12:11.713602" elapsed="0.002405"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:11.718201" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:11.716075" elapsed="0.002176"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.716056" elapsed="0.002217"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:11.721541" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:11.721587" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:11.718466" elapsed="0.003144"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:11.723686" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:11.721687" elapsed="0.002055"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.721668" elapsed="0.002098"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:11.723799" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:11.723991" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:11.724035" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:11.703804" elapsed="0.020254"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:11.726529" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:11.724667" elapsed="0.001908"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:11.724649" elapsed="0.001948"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.727177" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:11.726782" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:11.727774" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:11.727426" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:11.727850" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:11.728026" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:11.724289" elapsed="0.003762"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:11.728245" 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-08-10T02:12:11.703141" elapsed="0.025598"/>
</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-08-10T02:12:11.648506" elapsed="0.080288"/>
</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-08-10T02:12:11.640377" elapsed="0.088513"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.729474" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:12:11.729086" elapsed="8.000609"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:19.741196" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:19.741264" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:19.731525" elapsed="0.009851"/>
</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-08-10T02:12:19.730447" elapsed="0.011026"/>
</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-08-10T02:12:11.560616" elapsed="8.180940"/>
</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-08-10T02:12:11.560185" elapsed="8.181438"/>
</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-08-10T02:12:19.749063" 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-08-10T02:12:19.749378" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:19.748859" elapsed="0.000575"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:19.750421" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0a0220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:19.749764" elapsed="0.000697"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:19.751119" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:19.750727" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:19.751825" 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-08-10T02:12:19.751448" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:19.752581" 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-08-10T02:12:19.752171" elapsed="0.000446"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:19.753707" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:19.752884" elapsed="0.000853"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.754278" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:19.753936" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.754852" 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-08-10T02:12:19.754529" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.755431" 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-08-10T02:12:19.755087" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.755971" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:19.755659" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.756567" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:19.756229" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.757116" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0a0220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:19.756800" 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-08-10T02:12:19.748317" elapsed="0.008900"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.765279" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:19.765021" elapsed="0.000403"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:19.779603" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node013zn6afg8nyvi1we2bogj6e36n1.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-08-10T02:12:19.779671" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:19.779774" 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-08-10T02:12:19.765583" elapsed="0.014217"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.785116" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:19.779994" elapsed="0.005222"/>
</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-08-10T02:12:19.764583" elapsed="0.020796"/>
</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-08-10T02:12:19.797036" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:19.796718" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:19.805450" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:19.805832" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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;6&lt;/second&gt;&lt;nanosecond&gt;705000000&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-08-10T02:12:19.805958" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:19.797219" elapsed="0.008765"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.806899" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:19.806286" elapsed="0.000715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.818309" 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;6&lt;/second&gt;&lt;nanosecond&gt;705000000&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-08-10T02:12:19.807442" elapsed="0.010963"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:19.820655" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:19.818492" elapsed="0.002218"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:19.818468" elapsed="0.002265"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:19.824913" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:19.824960" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:19.820914" elapsed="0.004070"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:19.827273" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:19.825092" elapsed="0.002237"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:19.825072" elapsed="0.002300"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:19.827407" elapsed="0.000036"/>
</return>
<msg time="2026-08-10T02:12:19.827611" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:19.827655" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:19.796242" elapsed="0.031436"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:19.830097" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:19.828244" elapsed="0.001898"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:19.828226" elapsed="0.001937"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.830768" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:19.830367" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.831342" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:19.830990" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:19.831434" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:12:19.831613" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:19.827915" elapsed="0.003724"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:19.831832" elapsed="0.000393"/>
</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-08-10T02:12:19.795592" elapsed="0.036696"/>
</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-08-10T02:12:19.785755" elapsed="0.046587"/>
</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-08-10T02:12:19.844879" 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-08-10T02:12:19.845057" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:19.844742" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:19.845746" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcdc630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:19.845275" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:19.846241" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:19.845965" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:19.846745" 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-08-10T02:12:19.846474" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:19.847226" 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-08-10T02:12:19.846959" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:19.848133" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:19.847459" elapsed="0.000704"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.848718" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:19.848376" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.849283" 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-08-10T02:12:19.848949" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.849901" 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-08-10T02:12:19.849563" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.850470" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:19.850129" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.851029" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:19.850701" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.851615" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcdc630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:19.851264" 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-08-10T02:12:19.844385" elapsed="0.007326"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.852273" 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-08-10T02:12:19.851895" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.852754" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:19.852515" 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-08-10T02:12:19.861937" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:19.861635" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:19.870903" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:19.871288" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:19.871519" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:19.862116" elapsed="0.009444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.872224" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:19.871856" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.875955" 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-08-10T02:12:19.872561" elapsed="0.003478"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:19.879077" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:19.876138" elapsed="0.003009"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:19.876110" elapsed="0.003068"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:19.883633" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:19.883678" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:19.879454" elapsed="0.004247"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:19.885763" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:19.883775" elapsed="0.002043"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:19.883756" elapsed="0.002107"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:19.885897" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:12:19.886096" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:19.886141" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:12:19.861248" elapsed="0.024915"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:19.888817" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:19.886819" elapsed="0.002044"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:19.886801" elapsed="0.002084"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.889493" 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-08-10T02:12:19.889071" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.890108" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:19.889716" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:19.890184" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:19.890381" 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-08-10T02:12:19.886473" elapsed="0.003934"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:19.890600" 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-08-10T02:12:19.860654" elapsed="0.030400"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.900034" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:19.899727" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:19.908865" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:19.909315" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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;6&lt;/second&gt;&lt;nanosecond&gt;705000000&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-08-10T02:12:19.909537" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:19.900260" elapsed="0.009314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.910264" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:19.909880" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.914031" 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;6&lt;/second&gt;&lt;nanosecond&gt;705000000&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-08-10T02:12:19.910606" elapsed="0.003528"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:19.917202" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:19.914269" elapsed="0.003001"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:19.914210" elapsed="0.003090"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:19.923028" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:19.923095" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:19.917570" elapsed="0.005557"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:19.926317" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:19.923235" elapsed="0.003259"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:19.923209" elapsed="0.003321"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:19.926579" elapsed="0.000040"/>
</return>
<msg time="2026-08-10T02:12:19.926851" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:19.926912" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:19.899291" elapsed="0.027652"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:19.929633" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:19.927760" elapsed="0.001919"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:19.927735" elapsed="0.001965"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.930282" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:19.929883" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:19.930893" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:19.930542" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:19.930968" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:12:19.931146" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:19.927269" elapsed="0.003905"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:19.931389" 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-08-10T02:12:19.898588" elapsed="0.033252"/>
</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-08-10T02:12:19.840583" elapsed="0.091315"/>
</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-08-10T02:12:19.832526" elapsed="0.099428"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:12:27.932787" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:12:19.932146" elapsed="8.001126"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:27.946178" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:27.946286" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:27.935303" elapsed="0.011155"/>
</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-08-10T02:12:27.934193" elapsed="0.012392"/>
</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-08-10T02:12:19.742555" elapsed="8.204157"/>
</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-08-10T02:12:19.741982" elapsed="8.204839"/>
</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-08-10T02:12:27.956445" 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-08-10T02:12:27.956681" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:27.956195" elapsed="0.000527"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:27.957673" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcdf600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:27.957039" elapsed="0.000663"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:27.958192" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:27.957901" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:27.958719" 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-08-10T02:12:27.958434" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:27.959323" 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-08-10T02:12:27.958936" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:27.960324" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:27.959582" elapsed="0.000794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:27.960957" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:27.960588" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:27.961543" 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-08-10T02:12:27.961199" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:27.962113" 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-08-10T02:12:27.961783" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:27.962688" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:27.962365" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:27.963244" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:27.962925" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:27.965197" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcdf600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:27.963505" elapsed="0.001740"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:12:27.955664" elapsed="0.009640"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:27.973499" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:27.973218" elapsed="0.000344"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:27.989946" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node013zn6afg8nyvi1we2bogj6e36n1.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-08-10T02:12:27.990103" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:27.990397" 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-08-10T02:12:27.973719" elapsed="0.016742"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:27.995200" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:27.990965" elapsed="0.004295"/>
</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-08-10T02:12:27.972733" elapsed="0.022647"/>
</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-08-10T02:12:28.006727" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:28.006414" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:28.013717" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:28.014134" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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;7&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-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-08-10T02:12:28.014259" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:28.006916" elapsed="0.007368"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.014760" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:28.014504" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.017510" 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;7&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-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-08-10T02:12:28.014983" elapsed="0.002645"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:28.019835" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:28.017711" elapsed="0.002180"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:28.017686" elapsed="0.002230"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:28.024277" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:28.024323" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:28.020097" elapsed="0.004276"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:28.026487" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:28.024452" elapsed="0.002099"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:28.024433" elapsed="0.002143"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:28.026611" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:12:28.026814" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:28.026858" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:28.005973" elapsed="0.020908"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:28.029475" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:28.027471" elapsed="0.002051"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:28.027453" elapsed="0.002091"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.030137" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:28.029735" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.030745" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:28.030383" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:28.030821" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:28.031000" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:28.027117" 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-08-10T02:12:28.031220" elapsed="0.000417"/>
</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-08-10T02:12:28.005304" elapsed="0.026395"/>
</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-08-10T02:12:27.995620" elapsed="0.036128"/>
</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-08-10T02:12:28.044443" 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-08-10T02:12:28.044573" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:28.044287" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:28.045195" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfbc2fc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:28.044790" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:28.045732" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:28.045450" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:28.046216" 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-08-10T02:12:28.045946" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:28.046722" 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-08-10T02:12:28.046449" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:28.047630" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:28.046934" elapsed="0.000727"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.048190" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:28.047851" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.048774" 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-08-10T02:12:28.048441" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.049435" 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-08-10T02:12:28.049043" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.049999" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:28.049670" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.050588" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:28.050234" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.051154" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfbc2fc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:28.050822" 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-08-10T02:12:28.043930" elapsed="0.007321"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.051846" 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-08-10T02:12:28.051462" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.052301" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:28.052061" 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-08-10T02:12:28.061454" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:28.061126" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:28.069109" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:28.069329" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:28.069480" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:28.061637" elapsed="0.007869"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.069951" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:28.069699" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.072539" 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-08-10T02:12:28.070172" elapsed="0.002463"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:28.074840" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:28.072705" elapsed="0.002185"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:28.072686" elapsed="0.002227"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:28.081512" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:28.081564" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:28.075095" elapsed="0.006497"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:28.083676" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:28.081668" elapsed="0.002064"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:28.081649" elapsed="0.002106"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:28.083790" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:28.083984" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:28.084028" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:12:28.060771" elapsed="0.023279"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:28.086680" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:28.084649" elapsed="0.002078"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:28.084631" elapsed="0.002118"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.087350" 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-08-10T02:12:28.086935" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.087926" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:28.087578" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:28.088001" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:28.088177" 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-08-10T02:12:28.084291" elapsed="0.003912"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:28.088413" 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-08-10T02:12:28.060163" elapsed="0.028699"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.097859" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:28.097558" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:28.106230" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:28.106600" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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;7&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-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-08-10T02:12:28.106773" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:28.098050" elapsed="0.008749"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.107247" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:28.106994" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.110020" 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;7&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-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-08-10T02:12:28.107506" elapsed="0.002592"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:28.112257" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:28.110166" elapsed="0.002140"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:28.110148" elapsed="0.002180"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:28.116477" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:28.116523" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:28.112524" 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-08-10T02:12:28.118827" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:28.116622" elapsed="0.002261"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:28.116603" elapsed="0.002305"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:28.118942" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:28.119134" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:28.119177" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:28.097100" elapsed="0.022100"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:28.121660" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:28.119787" elapsed="0.001922"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:28.119769" elapsed="0.001963"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.122315" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:28.121918" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:28.122915" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:28.122567" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:28.122991" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:28.123168" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:28.119454" elapsed="0.003739"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:28.123407" 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-08-10T02:12:28.096467" elapsed="0.027391"/>
</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-08-10T02:12:28.040085" elapsed="0.083880"/>
</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-08-10T02:12:28.031913" elapsed="0.092109"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.124708" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:12:28.124214" elapsed="8.000717"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:36.138507" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:36.138613" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:36.126634" elapsed="0.012119"/>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-10T02:12:36.125664" elapsed="0.013215"/>
</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-08-10T02:12:27.948272" elapsed="8.190728"/>
</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-08-10T02:12:27.947412" elapsed="8.191693"/>
</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-08-10T02:12:36.148799" 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-08-10T02:12:36.148984" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:36.148651" elapsed="0.000363"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:36.149697" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0eaac0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:36.149207" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:36.150201" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:36.149917" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:36.150711" 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-08-10T02:12:36.150438" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:36.151232" 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-08-10T02:12:36.150959" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:36.152214" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;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-08-10T02:12:36.151467" elapsed="0.000777"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.152803" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:36.152459" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.153372" 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-08-10T02:12:36.153036" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.153931" 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-08-10T02:12:36.153603" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.154489" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:36.154160" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.155395" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:36.154749" elapsed="0.000696"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.155968" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0eaac0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:36.155639" 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-08-10T02:12:36.148269" elapsed="0.007799"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.164137" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:36.163883" elapsed="0.000318"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:36.177847" level="INFO">POST Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node013zn6afg8nyvi1we2bogj6e36n1.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-08-10T02:12:36.177915" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:36.178019" 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-08-10T02:12:36.164374" elapsed="0.013670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.188649" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:36.178236" elapsed="0.010466"/>
</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-08-10T02:12:36.163443" elapsed="0.025322"/>
</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-08-10T02:12:36.198139" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:36.197822" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:36.204685" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:36.205258" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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;5&lt;/second&gt;&lt;nanosecond&gt;421000000&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-08-10T02:12:36.205540" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:36.198322" elapsed="0.007257"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.206203" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:36.205851" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.210017" 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;5&lt;/second&gt;&lt;nanosecond&gt;421000000&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-08-10T02:12:36.206535" elapsed="0.003591"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:36.213188" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:36.210228" elapsed="0.003037"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:36.210199" elapsed="0.003098"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:36.218668" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:36.218715" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:36.213569" elapsed="0.005168"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:36.220862" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:36.218815" elapsed="0.002103"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:36.218797" elapsed="0.002146"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:36.220976" elapsed="0.000034"/>
</return>
<msg time="2026-08-10T02:12:36.221176" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:36.221221" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:36.197394" elapsed="0.023849"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:36.223697" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:36.221828" elapsed="0.001915"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:36.221811" elapsed="0.001954"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.224365" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:36.223951" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.224939" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:36.224592" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:36.225015" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:36.225192" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:36.221497" 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-08-10T02:12:36.225431" elapsed="0.000401"/>
</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-08-10T02:12:36.196736" elapsed="0.029158"/>
</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-08-10T02:12:36.188934" elapsed="0.037048"/>
</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-08-10T02:12:36.238690" 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-08-10T02:12:36.238820" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:36.238552" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:36.239502" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcddda0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:36.239067" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:36.239998" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-08-10T02:12:36.239722" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:36.240500" 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-08-10T02:12:36.240212" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:36.240985" 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-08-10T02:12:36.240717" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:36.241946" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:36.241198" elapsed="0.000779"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.242525" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:36.242169" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.243102" 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-08-10T02:12:36.242755" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.243689" 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-08-10T02:12:36.243350" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.244240" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-08-10T02:12:36.243918" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.244829" level="INFO">${upddata} = &lt;?xml version="1.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-08-10T02:12:36.244491" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.245408" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcddda0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:36.245062" 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-08-10T02:12:36.238181" elapsed="0.007325"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.246076" 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-08-10T02:12:36.245695" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.246722" level="INFO">&lt;?xml version="1.0" encoding="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-08-10T02:12:36.246290" elapsed="0.000530"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.255706" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:36.255403" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:36.264955" level="INFO">GET Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:36.265269" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:36.265446" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:36.255887" elapsed="0.009595"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.266100" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:36.265751" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.269739" 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-08-10T02:12:36.266444" elapsed="0.003381"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:36.272877" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:36.269920" elapsed="0.003026"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:36.269893" elapsed="0.003084"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:36.278001" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:36.278066" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:36.273225" elapsed="0.004873"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:36.280724" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:36.278201" elapsed="0.002578"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:36.278175" elapsed="0.002628"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:36.280837" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:36.281029" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:36.281073" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-08-10T02:12:36.255031" elapsed="0.026064"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:36.283698" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:36.281677" elapsed="0.002067"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:36.281659" elapsed="0.002107"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.284365" 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-08-10T02:12:36.283950" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.284940" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:36.284592" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:36.285050" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:12:36.285231" 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-08-10T02:12:36.281325" elapsed="0.003932"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:36.285466" 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-08-10T02:12:36.254428" elapsed="0.031489"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.294806" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:36.294508" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:36.304589" level="INFO">GET Request : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:36.305420" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory: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;5&lt;/second&gt;&lt;nanosecond&gt;421000000&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-08-10T02:12:36.305728" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:36.294989" elapsed="0.010797"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.306827" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:36.306220" elapsed="0.000707"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.312371" 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;5&lt;/second&gt;&lt;nanosecond&gt;421000000&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-08-10T02:12:36.307383" elapsed="0.005103"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:36.314661" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:36.312556" elapsed="0.002154"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:36.312537" elapsed="0.002195"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:36.319146" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:36.319193" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:36.314909" elapsed="0.004306"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:36.321499" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:36.319293" elapsed="0.002264"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:36.319274" elapsed="0.002307"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:36.321614" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:36.321807" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:36.321851" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-08-10T02:12:36.294079" elapsed="0.027795"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:36.324322" elapsed="0.000031"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:36.322457" elapsed="0.001927"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:36.322439" elapsed="0.001968"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.324990" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:36.324593" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:36.325597" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:36.325217" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:36.325673" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:36.325849" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:36.322108" elapsed="0.003767"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:36.326069" 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-08-10T02:12:36.293442" elapsed="0.033093"/>
</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-08-10T02:12:36.234323" elapsed="0.092269"/>
</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-08-10T02:12:36.226151" elapsed="0.100495"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-08-10T02:12:44.327286" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-08-10T02:12:36.326836" 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-08-10T02:12:44.338625" level="INFO">DELETE Request : url=http://10.30.170.209: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=node013zn6afg8nyvi1we2bogj6e36n1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:44.338690" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:44.329162" elapsed="0.009604"/>
</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-08-10T02:12:44.328192" elapsed="0.010649"/>
</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-08-10T02:12:36.140514" elapsed="8.198421"/>
</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-08-10T02:12:36.139649" elapsed="8.199393"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:12:44.341895" 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-08-10T02:12:44.340882" elapsed="0.001075"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-08-10T02:12:44.342551" elapsed="0.000071"/>
</return>
<status status="PASS" start="2026-08-10T02:12:44.342131" elapsed="0.000562"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:44.342086" elapsed="0.000677"/>
</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-08-10T02:12:44.343215" elapsed="0.000049"/>
</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-08-10T02:12:44.343802" elapsed="0.000055"/>
</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-08-10T02:12:44.344242" elapsed="0.000045"/>
</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-08-10T02:12:44.344665" elapsed="0.000045"/>
</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-08-10T02:12:44.345034" elapsed="0.000045"/>
</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-08-10T02:12:44.345433" elapsed="0.000046"/>
</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-08-10T02:12:44.345797" elapsed="0.000044"/>
</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-08-10T02:12:44.346442" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:44.345977" elapsed="0.000584"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:12:44.345941" elapsed="0.000672"/>
</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-08-10T02:12:44.340001" elapsed="0.006723"/>
</kw>
<doc>Iterate on add and delete flow until alien ID is found in Operational Datastore.</doc>
<status status="PASS" start="2026-08-10T02:12:11.559598" elapsed="32.787221"/>
</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-08-10T02:12:44.352263" elapsed="0.000166"/>
</kw>
<status status="PASS" start="2026-08-10T02:12:44.352020" elapsed="0.000445"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:44.352002" elapsed="0.000488"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:44.356859" 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-08-10T02:12:44.352629" elapsed="0.004293"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:44.522027" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 72.021 seconds
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:44.357111" elapsed="0.165025"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:44.522388" elapsed="0.000243"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-08-10T02:12:44.351794" elapsed="0.170900"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:44.522922" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:12:44.522846" elapsed="0.000152"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-08-10T02:12:44.347490" elapsed="0.175562"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-08-10T02:11:29.678126" elapsed="74.844958"/>
</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-08-10T02:12:44.605630" 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-08-10T02:12:44.605386" elapsed="0.000292"/>
</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-08-10T02:12:44.608058" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:44.607754" elapsed="0.000361"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:44.607731" elapsed="0.000411"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:44.608466" 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-08-10T02:12:44.608576" 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-08-10T02:12:44.608290" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:44.609131" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:12:44.608753" elapsed="0.000424"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:44.609726" 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-08-10T02:12:44.609348" elapsed="0.000404"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:12:44.610712" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:44.610792" 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-08-10T02:12:44.610393" elapsed="0.000422"/>
</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-08-10T02:12:44.610975" elapsed="0.000320"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:44.612157" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:45.256354" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:11:32 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:44.611841" elapsed="0.644693"/>
</kw>
<msg time="2026-08-10T02:12:45.256625" 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-08-10T02:12:44.611484" elapsed="0.645227"/>
</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-08-10T02:12:44.609969" elapsed="0.646861"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:12:45.257375" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:12:46.468229" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:12:46.468665" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:12:46.468770" 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-08-10T02:12:45.257092" elapsed="1.211737"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:46.469307" elapsed="0.000621"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:46.471073" 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-08-10T02:12:46.470426" elapsed="0.000767"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:46.471717" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:46.471401" elapsed="0.000423"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:46.471316" elapsed="0.000559"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:12:46.472234" elapsed="0.000066"/>
</return>
<status status="PASS" start="2026-08-10T02:12:46.471996" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:46.471961" elapsed="0.000565"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:46.472603" 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-08-10T02:12:46.476432" elapsed="0.000459"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-08-10T02:12:46.477121" elapsed="0.000250"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:46.477580" 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-08-10T02:12:46.473246" elapsed="0.004546"/>
</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-08-10T02:12:44.607246" elapsed="1.870675"/>
</kw>
<msg time="2026-08-10T02:12:46.477998" 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-08-10T02:12:44.606681" elapsed="1.871389"/>
</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-08-10T02:12:44.606189" elapsed="1.872071"/>
</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-08-10T02:12:46.481111" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:46.480696" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:46.480669" elapsed="0.000529"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:46.481503" 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-08-10T02:12:46.481605" 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-08-10T02:12:46.481366" elapsed="0.000265"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:46.482161" 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.177" 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-08-10T02:12:46.481782" elapsed="0.000426"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:46.482747" 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-08-10T02:12:46.482379" elapsed="0.000396"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:12:46.483631" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:46.483712" 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-08-10T02:12:46.483353" 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-08-10T02:12:46.483893" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:46.485089" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:46.826311" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:45 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:46.484776" elapsed="0.341696"/>
</kw>
<msg time="2026-08-10T02:12:46.826555" 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-08-10T02:12:46.484407" elapsed="0.342228"/>
</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-08-10T02:12:46.482991" elapsed="0.343757"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:12:46.827260" 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-08-10T02:12:46.860256" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:12:46.860544" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:12:46.860645" 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-08-10T02:12:46.827002" elapsed="0.033694"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:46.861121" elapsed="0.000527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:46.862806" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:46.862124" elapsed="0.000774"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:46.863403" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:46.863068" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:46.863017" 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-08-10T02:12:46.863927" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:12:46.863688" elapsed="0.000368"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:46.863653" elapsed="0.000456"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:46.864183" 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-08-10T02:12:46.870092" elapsed="0.000617"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-08-10T02:12:46.870948" elapsed="0.000165"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:46.871260" elapsed="0.000116"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:12:46.864944" elapsed="0.006483"/>
</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-08-10T02:12:46.479965" elapsed="0.391553"/>
</kw>
<msg time="2026-08-10T02:12:46.871572" 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-08-10T02:12:46.479164" elapsed="0.392458"/>
</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-08-10T02:12:46.478530" elapsed="0.393174"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-08-10T02:12:44.605882" elapsed="2.265880"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:46.876482" 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-08-10T02:12:46.876096" elapsed="0.000412"/>
</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-08-10T02:12:46.878180" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:46.878259" 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-08-10T02:12:46.877899" elapsed="0.000384"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:12:46.878456" elapsed="0.000325"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:46.879631" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:47.209124" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:46 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:46.879302" elapsed="0.329951"/>
</kw>
<msg time="2026-08-10T02:12:47.209328" 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-08-10T02:12:46.878949" elapsed="0.330470"/>
</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-08-10T02:12:46.877466" elapsed="0.332067"/>
</kw>
<msg time="2026-08-10T02:12:47.209588" 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-08-10T02:12:46.877057" elapsed="0.332578"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:12:46.876687" elapsed="0.333026"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-08-10T02:12:47.209762" elapsed="0.000042"/>
</return>
<msg time="2026-08-10T02:12:47.209974" 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-08-10T02:12:46.875655" elapsed="0.334345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:47.210759" 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-08-10T02:12:47.210297" elapsed="0.000505"/>
</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-08-10T02:12:47.213016" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:47.210886" elapsed="0.002226"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:47.210861" elapsed="0.002276"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:47.213627" level="INFO">Start mininet --topo tree,1 to 10.30.170.209</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:47.213310" elapsed="0.000361"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:47.216432" level="INFO">sudo mn --controller 'remote,ip=10.30.170.209,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-08-10T02:12:47.213833" elapsed="0.002746"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:47.374953" 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-08-10T02:12:47.216738" elapsed="0.158402"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:47.375977" 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-08-10T02:12:47.375577" elapsed="0.000450"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:47.380771" 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-08-10T02:12:47.376203" elapsed="0.004627"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:47.391292" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "ptcp:6654"
        Controller "tcp:10.30.170.209: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-08-10T02:12:47.380990" elapsed="0.010389"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-08-10T02:12:47.391442" elapsed="0.000064"/>
</return>
<msg time="2026-08-10T02:12:47.391729" 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-08-10T02:12:44.603231" elapsed="2.788527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:47.392382" 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-08-10T02:12:47.391969" elapsed="0.000460"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:47.393054" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777dfdf1c90&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-08-10T02:12:47.392614" elapsed="0.000703"/>
</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-08-10T02:12:47.403623" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:12:47.403868" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01k28za9dk8r1z1nq1qbyz0uabs2.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:12:47 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-08-10T02:12:47.404006" 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-08-10T02:12:47.394605" elapsed="0.009430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:47.407088" 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-08-10T02:12:47.404270" elapsed="0.002871"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:12:47.410068" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:12:47.410156" 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-08-10T02:12:47.407381" elapsed="0.002802"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:12:47.410707" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-08-10T02:12:47.410824" 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-08-10T02:12:47.410392" elapsed="0.000516">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-08-10T02:12:47.394241" elapsed="0.016798">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:48.422843" level="INFO">GET Request : url=http://10.30.170.209: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=node01k28za9dk8r1z1nq1qbyz0uabs2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:48.423418" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:12:48.423798" 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-08-10T02:12:48.412780" elapsed="0.011079"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.430471" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:48.424382" elapsed="0.006214"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.435677" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-08-10T02:12:48.435759" 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-08-10T02:12:48.431028" elapsed="0.004756"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.436238" 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-08-10T02:12:48.435950" elapsed="0.000347"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-08-10T02:12:48.411995" elapsed="0.024386"/>
</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-08-10T02:12:47.393549" elapsed="1.042881"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-08-10T02:12:44.602838" elapsed="3.833653"/>
</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-08-10T02:12:48.441096" 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-08-10T02:12:48.441260" 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-08-10T02:12:48.440945" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:48.441965" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcf0590&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:48.441505" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:48.442519" 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-08-10T02:12:48.442214" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:48.443013" 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-08-10T02:12:48.442744" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:48.443512" 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-08-10T02:12:48.443225" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:48.444376" 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-08-10T02:12:48.443732" elapsed="0.000675"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.444938" 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-08-10T02:12:48.444607" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.445498" 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-08-10T02:12:48.445175" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.446035" 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-08-10T02:12:48.445725" elapsed="0.003534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.449773" 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-08-10T02:12:48.449468" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.450372" 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-08-10T02:12:48.450006" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.450913" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcf0590&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:48.450607" 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-08-10T02:12:48.440577" elapsed="0.010469"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.459070" 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-08-10T02:12:48.458804" elapsed="0.000324"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:48.474311" level="INFO">POST Request : url=http://10.30.170.209: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=node01k28za9dk8r1z1nq1qbyz0uabs2.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-08-10T02:12:48.474431" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:48.474563" 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-08-10T02:12:48.459284" elapsed="0.015314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.480165" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:48.474868" elapsed="0.005394"/>
</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-08-10T02:12:48.458369" elapsed="0.022060"/>
</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-08-10T02:12:48.494888" 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-08-10T02:12:48.495030" 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-08-10T02:12:48.494742" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:48.495727" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfb2ed40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:48.495248" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:48.496220" 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-08-10T02:12:48.495945" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:48.496724" 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-08-10T02:12:48.496455" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:48.497203" 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-08-10T02:12:48.496936" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:48.498002" 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-08-10T02:12:48.497445" elapsed="0.000590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.498594" 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-08-10T02:12:48.498245" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.499148" 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-08-10T02:12:48.498831" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.499763" 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-08-10T02:12:48.499435" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.500355" 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-08-10T02:12:48.499995" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.500905" 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-08-10T02:12:48.500589" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.501467" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfb2ed40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:48.501135" 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-08-10T02:12:48.494373" elapsed="0.007191"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.502173" 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-08-10T02:12:48.501751" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.502654" 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-08-10T02:12:48.502409" 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-08-10T02:12:48.511644" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:48.511313" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:48.519932" level="INFO">GET Request : url=http://10.30.170.209: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=node01k28za9dk8r1z1nq1qbyz0uabs2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:48.520145" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:48.520250" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:48.511826" elapsed="0.008450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.520748" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:48.520496" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.523477" 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-08-10T02:12:48.520968" elapsed="0.002567"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:48.525762" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:48.523651" elapsed="0.002168"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:48.523626" elapsed="0.002219"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:48.529053" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:48.529099" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:48.526032" elapsed="0.003090"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:48.531209" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:48.529195" elapsed="0.002070"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:48.529176" elapsed="0.002112"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:48.531322" elapsed="0.000055"/>
</return>
<msg time="2026-08-10T02:12:48.531546" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:48.531590" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-08-10T02:12:48.510956" elapsed="0.020656"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:48.534109" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:48.532216" elapsed="0.001968"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:48.532197" elapsed="0.002010"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.534806" 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-08-10T02:12:48.534409" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.535398" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:48.535032" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:48.535473" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:48.535650" 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-08-10T02:12:48.531849" elapsed="0.003826"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:48.535870" 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-08-10T02:12:48.510351" elapsed="0.025975"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.545319" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:48.545019" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:48.554113" level="INFO">GET Request : url=http://10.30.170.209: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=node01k28za9dk8r1z1nq1qbyz0uabs2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:48.554962" level="INFO">GET Response : url=http://10.30.170.209: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;5000000&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;2&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-08-10T02:12:48.555082" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:48.545520" elapsed="0.009587"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.555605" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:48.555351" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.558876" 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;5000000&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;2&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-08-10T02:12:48.555825" elapsed="0.003122"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:48.561117" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:48.559015" elapsed="0.002152"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:48.558996" elapsed="0.002193"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:48.565244" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:48.565289" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:48.561385" 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-08-10T02:12:48.567494" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:48.565407" elapsed="0.002143"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:48.565388" elapsed="0.002185"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:48.567607" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:48.567800" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:48.567844" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>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-08-10T02:12:48.544597" elapsed="0.023269"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:48.570311" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:48.568445" elapsed="0.001927"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:48.568428" elapsed="0.001966"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.570976" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:48.570581" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.571573" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:48.571203" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:48.571649" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:48.571826" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:48.568100" elapsed="0.003751"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:48.572044" 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-08-10T02:12:48.543933" elapsed="0.028579"/>
</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-08-10T02:12:48.490425" elapsed="0.082143"/>
</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-08-10T02:12:48.480807" elapsed="0.091816"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.573794" 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-08-10T02:12:48.573382" elapsed="0.000439"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-08-10T02:12:48.574079" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-08-10T02:12:48.573931" elapsed="0.000205"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:48.573912" elapsed="0.000249"/>
</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-08-10T02:12:48.574376" 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-08-10T02:12:48.574556" elapsed="0.000019"/>
</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-08-10T02:12:48.574732" elapsed="0.000019"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:48.574903" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:48.575067" 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-08-10T02:12:48.575227" 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-08-10T02:12:48.575405" 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-08-10T02:12:48.575661" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:48.575489" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:12:48.575473" elapsed="0.000264"/>
</if>
<arg>7258</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-08-10T02:12:48.573000" elapsed="0.002785"/>
</kw>
<doc>Add flow with incorrect in-port format to generate alien ID</doc>
<status status="PASS" start="2026-08-10T02:12:48.436579" elapsed="0.139250"/>
</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-08-10T02:12:48.586127" level="INFO">DELETE Request : url=http://10.30.170.209: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=node01k28za9dk8r1z1nq1qbyz0uabs2.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:48.586172" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:48.576926" elapsed="0.009332"/>
</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-08-10T02:12:48.576580" elapsed="0.009733"/>
</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-08-10T02:12:48.590880" elapsed="0.000145"/>
</kw>
<status status="PASS" start="2026-08-10T02:12:48.590658" elapsed="0.000404"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:48.590640" elapsed="0.000446"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:48.594209" 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-08-10T02:12:48.591223" elapsed="0.003042"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:48.712029" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 1.427 seconds
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:48.594437" elapsed="0.117663"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:48.712269" elapsed="0.000190"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-08-10T02:12:48.590440" elapsed="0.122077"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:48.712741" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:12:48.712668" elapsed="0.000138"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-08-10T02:12:48.576330" elapsed="0.136529"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-08-10T02:12:44.523867" elapsed="4.189021"/>
</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-08-10T02:12:48.790813" 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-08-10T02:12:48.790583" elapsed="0.000278"/>
</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-08-10T02:12:48.793255" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:48.792957" elapsed="0.000436"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:48.792936" elapsed="0.000485"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:48.793732" 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-08-10T02:12:48.793840" 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-08-10T02:12:48.793577" elapsed="0.000290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.794450" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:12:48.794017" elapsed="0.000480"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:48.795024" 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-08-10T02:12:48.794657" elapsed="0.000393"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:12:48.795921" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:48.795998" 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-08-10T02:12:48.795639" 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-08-10T02:12:48.796180" elapsed="0.000342"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:48.797377" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:49.133871" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:47 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:48.797048" elapsed="0.336966"/>
</kw>
<msg time="2026-08-10T02:12:49.134100" 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-08-10T02:12:48.796689" elapsed="0.337496"/>
</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-08-10T02:12:48.795265" elapsed="0.339036"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:12:49.134862" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:12:50.348306" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:12:50.348717" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:12:50.348822" 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-08-10T02:12:49.134581" elapsed="1.214298"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:50.349405" elapsed="0.000652"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:50.351217" 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-08-10T02:12:50.350567" elapsed="0.000805"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:50.351891" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:50.351550" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:50.351499" 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-08-10T02:12:50.352454" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-08-10T02:12:50.352178" elapsed="0.000419"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:50.352144" elapsed="0.000507"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:50.352726" 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-08-10T02:12:50.358402" elapsed="0.000347"/>
</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-08-10T02:12:50.358915" elapsed="0.000168"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:50.359230" 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-08-10T02:12:50.353503" elapsed="0.005899"/>
</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-08-10T02:12:48.792462" elapsed="1.567035"/>
</kw>
<msg time="2026-08-10T02:12:50.359555" 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-08-10T02:12:48.791887" elapsed="1.567723"/>
</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-08-10T02:12:48.791429" elapsed="1.568263"/>
</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-08-10T02:12:50.361787" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:50.361462" elapsed="0.000383"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:50.361443" elapsed="0.000426"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:50.362167" 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-08-10T02:12:50.362271" 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-08-10T02:12:50.362024" elapsed="0.000273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:50.362848" 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.177" 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-08-10T02:12:50.362468" elapsed="0.000427"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:50.363454" 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-08-10T02:12:50.363050" elapsed="0.000433"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:12:50.364363" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:50.364445" 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-08-10T02:12:50.364048" 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-08-10T02:12:50.364626" elapsed="0.000327"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:50.365838" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:50.692307" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:49 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:50.365491" elapsed="0.326929"/>
</kw>
<msg time="2026-08-10T02:12:50.692487" 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-08-10T02:12:50.365119" elapsed="0.327429"/>
</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-08-10T02:12:50.363697" elapsed="0.328940"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:12:50.693019" 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-08-10T02:12:50.735772" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:12:50.735895" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:12:50.735996" 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-08-10T02:12:50.692823" elapsed="0.043198"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:50.736186" elapsed="0.000231"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:50.737145" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:50.736617" elapsed="0.000619"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:50.737710" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:50.737437" elapsed="0.000380"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:50.737390" elapsed="0.000479"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:12:50.738216" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:12:50.737985" elapsed="0.000397"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:50.737951" elapsed="0.000486"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:50.738541" 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-08-10T02:12:50.744255" elapsed="0.000745"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-08-10T02:12:50.745402" elapsed="0.000340"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:50.746075" elapsed="0.000216"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:12:50.739216" elapsed="0.007227"/>
</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-08-10T02:12:50.360934" elapsed="0.385774"/>
</kw>
<msg time="2026-08-10T02:12:50.746827" 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-08-10T02:12:50.360361" elapsed="0.386574"/>
</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-08-10T02:12:50.359869" elapsed="0.387235"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-08-10T02:12:48.791068" elapsed="1.956093"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:50.751883" 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-08-10T02:12:50.751520" elapsed="0.000390"/>
</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-08-10T02:12:50.753543" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:50.753621" 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-08-10T02:12:50.753251" elapsed="0.000395"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:12:50.753803" elapsed="0.000314"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:50.754996" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:51.084675" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:50 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:50.754684" elapsed="0.330199"/>
</kw>
<msg time="2026-08-10T02:12:51.085022" 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-08-10T02:12:50.754285" elapsed="0.330861"/>
</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-08-10T02:12:50.752822" elapsed="0.332587"/>
</kw>
<msg time="2026-08-10T02:12:51.085532" 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-08-10T02:12:50.752439" elapsed="0.333194"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:12:50.752093" elapsed="0.333809"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-08-10T02:12:51.085997" elapsed="0.000073"/>
</return>
<msg time="2026-08-10T02:12:51.086425" 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-08-10T02:12:50.751062" elapsed="0.335422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:51.087910" 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-08-10T02:12:51.087005" elapsed="0.000997"/>
</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-08-10T02:12:51.090223" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:51.088135" elapsed="0.002144"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:51.088112" elapsed="0.002193"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:51.090790" level="INFO">Start mininet --topo tree,1 to 10.30.170.209</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:51.090495" elapsed="0.000340"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:51.093518" level="INFO">sudo mn --controller 'remote,ip=10.30.170.209,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-08-10T02:12:51.090998" elapsed="0.002578"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:51.250068" 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-08-10T02:12:51.093734" elapsed="0.156403"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:51.250578" 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-08-10T02:12:51.250329" elapsed="0.000295"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:51.252359" 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-08-10T02:12:51.250775" elapsed="0.001638"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:51.263609" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "ptcp:6654"
        Controller "tcp:10.30.170.209: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-08-10T02:12:51.252567" elapsed="0.011104"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-08-10T02:12:51.263717" elapsed="0.000031"/>
</return>
<msg time="2026-08-10T02:12:51.263921" 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-08-10T02:12:48.788409" elapsed="2.475539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:51.264447" 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-08-10T02:12:51.264113" elapsed="0.000377"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:51.264985" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777ec3844d0&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-08-10T02:12:51.264646" elapsed="0.000518"/>
</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-08-10T02:12:51.275677" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:12:51.275886" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01ardin5fvj73b1sa37m14o2bwm3.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:12:51 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-08-10T02:12:51.276116" 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-08-10T02:12:51.266199" elapsed="0.009946"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:51.278694" 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-08-10T02:12:51.276362" elapsed="0.002379"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:12:51.281198" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:12:51.281278" 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-08-10T02:12:51.278929" elapsed="0.002372"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:12:51.281825" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-08-10T02:12:51.281928" 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-08-10T02:12:51.281493" elapsed="0.000510">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-08-10T02:12:51.265933" elapsed="0.016182">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:52.293527" level="INFO">GET Request : url=http://10.30.170.209: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=node01ardin5fvj73b1sa37m14o2bwm3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:52.293915" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:12:52.294073" 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-08-10T02:12:52.283888" elapsed="0.010223"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.300292" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:52.294450" elapsed="0.006016"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.304667" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-08-10T02:12:52.304749" 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-08-10T02:12:52.300898" elapsed="0.003875"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.305219" 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-08-10T02:12:52.304937" elapsed="0.000339"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-08-10T02:12:52.283100" elapsed="0.022266"/>
</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-08-10T02:12:51.265362" elapsed="1.040055"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-08-10T02:12:48.788007" elapsed="3.517469"/>
</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-08-10T02:12:52.309941" 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-08-10T02:12:52.310109" 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-08-10T02:12:52.309793" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:52.310805" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcdfba0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:52.310329" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:52.311316" 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-08-10T02:12:52.311030" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:52.311817" 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-08-10T02:12:52.311550" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:52.312298" 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-08-10T02:12:52.312030" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:52.313135" 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-08-10T02:12:52.312534" elapsed="0.000631"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.313764" 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-08-10T02:12:52.313432" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.314306" 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-08-10T02:12:52.313998" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.314884" 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-08-10T02:12:52.314569" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.315435" 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-08-10T02:12:52.315114" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.315976" 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-08-10T02:12:52.315669" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.316542" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcdfba0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:52.316212" elapsed="0.000373"/>
</kw>
<arg>${XmlsDir}/${flowfile1}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:12:52.309420" elapsed="0.007221"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.324677" 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-08-10T02:12:52.324426" elapsed="0.000309"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:52.337368" level="INFO">POST Request : url=http://10.30.170.209: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=node01ardin5fvj73b1sa37m14o2bwm3.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-08-10T02:12:52.337434" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:52.337527" 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-08-10T02:12:52.324890" elapsed="0.012662"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.342649" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:52.337751" elapsed="0.004997"/>
</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-08-10T02:12:52.323969" elapsed="0.018907"/>
</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-08-10T02:12:52.358060" 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-08-10T02:12:52.358198" 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-08-10T02:12:52.357921" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:52.358875" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcf0400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:52.358473" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:52.359414" 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-08-10T02:12:52.359109" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:52.359898" 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-08-10T02:12:52.359630" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:52.360401" 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-08-10T02:12:52.360109" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:52.361156" 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-08-10T02:12:52.360615" elapsed="0.000572"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.361729" 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-08-10T02:12:52.361397" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.362275" 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-08-10T02:12:52.361959" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.362874" 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-08-10T02:12:52.362523" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.363433" 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-08-10T02:12:52.363102" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.363980" 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-08-10T02:12:52.363666" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.364547" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfcf0400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:52.364211" 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-08-10T02:12:52.357562" elapsed="0.007081"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.365220" 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-08-10T02:12:52.364831" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.365693" 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-08-10T02:12:52.365452" 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-08-10T02:12:52.374844" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:52.374512" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:52.383273" level="INFO">GET Request : url=http://10.30.170.209: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=node01ardin5fvj73b1sa37m14o2bwm3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:52.383613" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:52.383810" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:52.375027" elapsed="0.008819"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.384496" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:52.384118" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.388303" 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-08-10T02:12:52.384808" 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-08-10T02:12:52.391489" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:52.388518" elapsed="0.003048"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.388487" elapsed="0.003112"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:52.395801" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:52.395847" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:52.391850" elapsed="0.004019"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:52.397944" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:52.395943" elapsed="0.002057"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.395925" elapsed="0.002099"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:52.398058" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:12:52.398258" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:52.398301" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-08-10T02:12:52.374135" elapsed="0.024189"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:52.400785" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:52.398927" elapsed="0.001904"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.398910" elapsed="0.001942"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.401454" 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-08-10T02:12:52.401038" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.402034" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:52.401687" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:52.402109" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:52.402286" 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-08-10T02:12:52.398582" 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-08-10T02:12:52.402524" 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-08-10T02:12:52.373535" elapsed="0.029471"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.412000" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:52.411703" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:52.420619" level="INFO">GET Request : url=http://10.30.170.209: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=node01ardin5fvj73b1sa37m14o2bwm3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:52.421684" level="INFO">GET Response : url=http://10.30.170.209: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;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;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-08-10T02:12:52.422036" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:52.412181" elapsed="0.009914"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.423175" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:52.422571" elapsed="0.000706"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.430622" 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;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;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-08-10T02:12:52.423714" elapsed="0.007068"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:52.433328" elapsed="0.000031"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:52.430995" elapsed="0.002399"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.430951" elapsed="0.002466"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:52.437515" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:52.437562" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:52.433594" elapsed="0.003990"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:52.439688" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:52.437661" elapsed="0.002083"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.437643" elapsed="0.002125"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:52.439801" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:52.439994" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:52.440038" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>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-08-10T02:12:52.411267" elapsed="0.028793"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:52.442500" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:52.440646" elapsed="0.001900"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.440629" elapsed="0.001938"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.443165" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:52.442752" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.443767" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:52.443414" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:52.443844" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:52.444021" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:52.440296" 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-08-10T02:12:52.444240" 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-08-10T02:12:52.410606" elapsed="0.034100"/>
</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-08-10T02:12:52.353708" elapsed="0.091055"/>
</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-08-10T02:12:52.343250" elapsed="0.101567"/>
</kw>
<doc>Add flow match IP and Ethertype IP</doc>
<status status="PASS" start="2026-08-10T02:12:52.305542" elapsed="0.139404"/>
</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-08-10T02:12:52.449853" 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-08-10T02:12:52.449995" 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-08-10T02:12:52.449714" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:52.450617" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfbb50d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:52.450213" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:52.451126" 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-08-10T02:12:52.450836" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:52.451637" 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-08-10T02:12:52.451367" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:52.452114" 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-08-10T02:12:52.451849" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:52.453049" 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-08-10T02:12:52.452331" elapsed="0.000749"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.453622" 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-08-10T02:12:52.453278" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.454164" 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-08-10T02:12:52.453853" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.454727" 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-08-10T02:12:52.454412" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.455288" 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-08-10T02:12:52.454983" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.455847" 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-08-10T02:12:52.455542" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.456408" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfbb50d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:52.456080" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${flowfile2}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:12:52.449335" elapsed="0.007171"/>
</kw>
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.464578" 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-08-10T02:12:52.464310" elapsed="0.000327"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:52.478588" level="INFO">PUT Request : url=http://10.30.170.209: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=node01ardin5fvj73b1sa37m14o2bwm3.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-08-10T02:12:52.478717" level="INFO">PUT Response : url=http://10.30.170.209: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-08-10T02:12:52.478848" 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-08-10T02:12:52.464791" elapsed="0.014094"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.484069" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:52.479196" elapsed="0.004969"/>
</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-08-10T02:12:52.463839" elapsed="0.020453"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.494735" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:52.494433" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:52.500200" level="INFO">GET Request : url=http://10.30.170.209: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=node01ardin5fvj73b1sa37m14o2bwm3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:52.500415" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:52.500520" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:52.494915" elapsed="0.005630"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.500992" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:52.500741" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.503671" 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-08-10T02:12:52.501219" 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-08-10T02:12:52.506776" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:52.503846" elapsed="0.003000"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.503819" elapsed="0.003057"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:52.511155" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:52.511219" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:52.507136" 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-08-10T02:12:52.513803" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:52.511380" elapsed="0.002479"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.511328" elapsed="0.002554"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:52.513916" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:52.514109" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:52.514152" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-08-10T02:12:52.494054" elapsed="0.020119"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:52.516633" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:52.514755" elapsed="0.001924"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.514737" elapsed="0.001964"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.517284" 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-08-10T02:12:52.516888" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.517878" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:52.517528" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:52.517990" elapsed="0.000030"/>
</return>
<msg time="2026-08-10T02:12:52.518173" 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-08-10T02:12:52.514423" 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-08-10T02:12:52.518407" elapsed="0.000387"/>
</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-08-10T02:12:52.493469" elapsed="0.025387"/>
</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-08-10T02:12:52.532893" level="INFO">GET Request : url=http://10.30.170.209: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=node01ardin5fvj73b1sa37m14o2bwm3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:52.533040" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:52.533132" 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-08-10T02:12:52.526773" elapsed="0.006385"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-08-10T02:12:52.537910" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-08-10T02:12:52.533242" elapsed="0.004750"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.533224" elapsed="0.004801"/>
</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-08-10T02:12:52.538236" elapsed="0.000030"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:52.538490" 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-08-10T02:12:52.526220" elapsed="0.012380"/>
</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-08-10T02:12:52.519019" elapsed="0.019650"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.540276" 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-08-10T02:12:52.539705" elapsed="0.000608"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-08-10T02:12:52.540641" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-08-10T02:12:52.540441" elapsed="0.000279"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.540415" elapsed="0.000337"/>
</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-08-10T02:12:52.540996" 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-08-10T02:12:52.541239" elapsed="0.000030"/>
</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-08-10T02:12:52.541512" 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-08-10T02:12:52.541753" 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-08-10T02:12:52.541980" elapsed="0.000027"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:52.542203" 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-08-10T02:12:52.542448" elapsed="0.000028"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:52.542801" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:52.542561" elapsed="0.000311"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:12:52.542539" elapsed="0.000365"/>
</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-08-10T02:12:52.539191" elapsed="0.003781"/>
</kw>
<doc>Update flow removing Ethertype, this should remove flow from switch and operational DS</doc>
<status status="PASS" start="2026-08-10T02:12:52.445351" elapsed="0.097730"/>
</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-08-10T02:12:52.551693" level="INFO">DELETE Request : url=http://10.30.170.209: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=node01ardin5fvj73b1sa37m14o2bwm3.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:52.551736" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:52.544493" elapsed="0.007294"/>
</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-08-10T02:12:52.544081" elapsed="0.007759"/>
</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-08-10T02:12:52.558478" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-08-10T02:12:52.558139" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.558114" elapsed="0.000653"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:52.561743" 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-08-10T02:12:52.558959" elapsed="0.002929"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:52.670099" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 1.514 seconds
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:52.562295" elapsed="0.107874"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:52.670354" elapsed="0.000177"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-08-10T02:12:52.557833" elapsed="0.112755"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:52.670808" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:12:52.670737" elapsed="0.000137"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-08-10T02:12:52.543774" elapsed="0.127150"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-08-10T02:12:48.713587" elapsed="3.957367"/>
</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-08-10T02:12:52.748780" 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-08-10T02:12:52.748552" elapsed="0.000275"/>
</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-08-10T02:12:52.751149" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:52.750856" elapsed="0.000350"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:52.750835" elapsed="0.000397"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:52.751551" 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-08-10T02:12:52.751687" 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-08-10T02:12:52.751402" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.752241" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:12:52.751864" elapsed="0.000424"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:52.752835" 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-08-10T02:12:52.752463" elapsed="0.000398"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:12:52.753733" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:52.753811" 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-08-10T02:12:52.753446" 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-08-10T02:12:52.753991" elapsed="0.000317"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:52.755211" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:53.132890" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:51 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:52.754895" elapsed="0.378248"/>
</kw>
<msg time="2026-08-10T02:12:53.133230" 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-08-10T02:12:52.754530" elapsed="0.378788"/>
</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-08-10T02:12:52.753074" elapsed="0.380395"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:12:53.134003" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:12:54.337388" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:12:54.337727" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:12:54.337829" 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-08-10T02:12:53.133736" elapsed="1.204150"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:54.338385" elapsed="0.000556"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:54.340117" 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-08-10T02:12:54.339453" elapsed="0.000788"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:54.340748" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:54.340447" elapsed="0.000412"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:54.340396" elapsed="0.000514"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:12:54.341258" elapsed="0.000064"/>
</return>
<status status="PASS" start="2026-08-10T02:12:54.341026" elapsed="0.000402"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:54.340993" elapsed="0.000487"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:54.341557" 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-08-10T02:12:54.347324" elapsed="0.000792"/>
</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-08-10T02:12:54.348393" elapsed="0.000169"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:54.348712" elapsed="0.000096"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:12:54.342257" elapsed="0.006604"/>
</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-08-10T02:12:52.750377" elapsed="1.598576"/>
</kw>
<msg time="2026-08-10T02:12:54.349011" 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-08-10T02:12:52.749804" elapsed="1.599262"/>
</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-08-10T02:12:52.749356" elapsed="1.599792"/>
</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-08-10T02:12:54.351176" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:54.350884" elapsed="0.000351"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:54.350866" elapsed="0.000393"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:54.351583" 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-08-10T02:12:54.351686" 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-08-10T02:12:54.351445" elapsed="0.000267"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:54.352242" 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.177" 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-08-10T02:12:54.351862" elapsed="0.000530"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:54.352926" 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-08-10T02:12:54.352553" elapsed="0.000401"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:12:54.353824" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:54.353903" 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-08-10T02:12:54.353541" elapsed="0.000386"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:12:54.354084" elapsed="0.000348"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:54.355265" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:54.677091" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:53 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:54.354954" elapsed="0.322258"/>
</kw>
<msg time="2026-08-10T02:12:54.677286" 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-08-10T02:12:54.354601" elapsed="0.322774"/>
</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-08-10T02:12:54.353170" elapsed="0.324305"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:12:54.677911" 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-08-10T02:12:54.710825" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:12:54.711060" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:12:54.711157" 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-08-10T02:12:54.677686" elapsed="0.033522"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:54.711610" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:54.713147" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:54.712548" elapsed="0.000690"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:54.713717" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:54.713438" elapsed="0.000383"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:54.713387" elapsed="0.000484"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:12:54.714215" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:12:54.713985" elapsed="0.000393"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:54.713952" elapsed="0.000481"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:54.714507" 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-08-10T02:12:54.720213" elapsed="0.000595"/>
</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-08-10T02:12:54.720972" elapsed="0.000159"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:54.721278" elapsed="0.000117"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:12:54.715182" elapsed="0.006269"/>
</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-08-10T02:12:54.350398" elapsed="0.371145"/>
</kw>
<msg time="2026-08-10T02:12:54.721596" 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-08-10T02:12:54.349819" elapsed="0.371827"/>
</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-08-10T02:12:54.349329" elapsed="0.372395"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-08-10T02:12:52.749032" elapsed="1.972807"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:54.726594" 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-08-10T02:12:54.726211" elapsed="0.000409"/>
</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-08-10T02:12:54.728274" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:54.728369" 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-08-10T02:12:54.727973" elapsed="0.000422"/>
</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-08-10T02:12:54.728574" elapsed="0.000337"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:54.729763" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:55.173192" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:54 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:54.729450" elapsed="0.443953"/>
</kw>
<msg time="2026-08-10T02:12:55.173505" 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-08-10T02:12:54.729077" elapsed="0.444524"/>
</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-08-10T02:12:54.727542" elapsed="0.446196"/>
</kw>
<msg time="2026-08-10T02:12:55.173794" 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-08-10T02:12:54.727128" elapsed="0.446714"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:12:54.726798" elapsed="0.447126"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-08-10T02:12:55.173985" elapsed="0.000048"/>
</return>
<msg time="2026-08-10T02:12:55.174231" 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-08-10T02:12:54.725770" elapsed="0.448488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:55.175145" 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-08-10T02:12:55.174642" elapsed="0.000547"/>
</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-08-10T02:12:55.177599" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:55.175280" elapsed="0.002376"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:55.175254" elapsed="0.002429"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:55.178168" level="INFO">Start mininet --topo tree,1 to 10.30.170.209</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:55.177860" elapsed="0.000354"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:55.180929" level="INFO">sudo mn --controller 'remote,ip=10.30.170.209,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-08-10T02:12:55.178403" elapsed="0.002582"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:55.414811" 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-08-10T02:12:55.181172" elapsed="0.233711"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:55.415318" 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-08-10T02:12:55.415080" elapsed="0.000302"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:55.418366" 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-08-10T02:12:55.415534" elapsed="0.002889"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:55.425881" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "ptcp:6654"
        Controller "tcp:10.30.170.209: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-08-10T02:12:55.418579" elapsed="0.007367"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-08-10T02:12:55.425993" elapsed="0.000035"/>
</return>
<msg time="2026-08-10T02:12:55.426255" 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-08-10T02:12:52.746392" elapsed="2.679889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:55.426787" 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-08-10T02:12:55.426464" elapsed="0.000365"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:55.427352" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777dfc47450&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-08-10T02:12:55.426984" elapsed="0.000559"/>
</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-08-10T02:12:55.438860" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:12:55.439137" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0nfzb4suzg430tswbo13ptsj94.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:12:55 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-08-10T02:12:55.439457" 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-08-10T02:12:55.428619" elapsed="0.010878"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:55.443519" 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-08-10T02:12:55.439782" elapsed="0.003809"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:12:55.447260" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:12:55.447402" 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-08-10T02:12:55.443870" elapsed="0.003569"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:12:55.448087" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-08-10T02:12:55.448230" 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-08-10T02:12:55.447676" elapsed="0.000680">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-08-10T02:12:55.428313" elapsed="0.020212">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:56.458511" level="INFO">GET Request : url=http://10.30.170.209: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=node0nfzb4suzg430tswbo13ptsj94.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:56.459084" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:12:56.459372" 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-08-10T02:12:56.449935" elapsed="0.009503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.465192" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:56.459953" elapsed="0.005316"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.468896" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-08-10T02:12:56.469078" 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-08-10T02:12:56.465565" elapsed="0.003548"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.469762" 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-08-10T02:12:56.469363" elapsed="0.000479"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-08-10T02:12:56.449256" elapsed="0.020670"/>
</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-08-10T02:12:55.427720" elapsed="1.042270"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-08-10T02:12:52.745985" elapsed="3.724087"/>
</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-08-10T02:12:56.475322" 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-08-10T02:12:56.475498" 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-08-10T02:12:56.475176" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:56.476149" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfa8a480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:56.475718" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.476667" 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-08-10T02:12:56.476386" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.477148" 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-08-10T02:12:56.476881" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.477645" 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-08-10T02:12:56.477377" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:56.478478" 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-08-10T02:12:56.477858" elapsed="0.000650"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.479030" 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-08-10T02:12:56.478706" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.479586" 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-08-10T02:12:56.479261" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.480172" 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-08-10T02:12:56.479857" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.480716" 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-08-10T02:12:56.480418" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.481249" 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-08-10T02:12:56.480947" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.481801" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfa8a480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:56.481496" elapsed="0.000346"/>
</kw>
<arg>${XmlsDir}/${flowfile1}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:12:56.474809" elapsed="0.007086"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.490100" 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-08-10T02:12:56.489850" elapsed="0.000307"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:56.500746" level="INFO">POST Request : url=http://10.30.170.209: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=node0nfzb4suzg430tswbo13ptsj94.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-08-10T02:12:56.500837" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:56.500981" 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-08-10T02:12:56.490363" elapsed="0.010662"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.504573" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:56.501305" elapsed="0.003329"/>
</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-08-10T02:12:56.489419" elapsed="0.015294"/>
</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-08-10T02:12:56.519479" 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-08-10T02:12:56.519608" 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-08-10T02:12:56.519324" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:56.520229" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0a3150&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:56.519822" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.520741" 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-08-10T02:12:56.520464" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.521219" 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-08-10T02:12:56.520953" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.521713" 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-08-10T02:12:56.521445" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:56.522467" 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-08-10T02:12:56.521924" elapsed="0.000574"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.523016" 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-08-10T02:12:56.522689" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.523588" 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-08-10T02:12:56.523244" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.524158" 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-08-10T02:12:56.523817" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.524715" 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-08-10T02:12:56.524404" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.525259" 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-08-10T02:12:56.524946" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.525832" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec0a3150&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:56.525515" 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-08-10T02:12:56.518967" elapsed="0.007006"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.526569" 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-08-10T02:12:56.526160" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.527020" 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-08-10T02:12:56.526781" 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-08-10T02:12:56.536323" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:56.536004" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:56.544278" level="INFO">GET Request : url=http://10.30.170.209: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=node0nfzb4suzg430tswbo13ptsj94.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:56.544561" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:56.544812" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:56.536529" elapsed="0.008341"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.545894" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:56.545299" elapsed="0.000697"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.551679" 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-08-10T02:12:56.546424" elapsed="0.005386"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:56.554415" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:56.552034" elapsed="0.002438"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.551984" elapsed="0.002512"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:56.557649" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:56.557694" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:56.554676" elapsed="0.003040"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:56.559796" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:56.557790" elapsed="0.002062"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.557772" elapsed="0.002103"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:56.559910" elapsed="0.000066"/>
</return>
<msg time="2026-08-10T02:12:56.560155" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:56.560199" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-08-10T02:12:56.535619" elapsed="0.024602"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:56.562690" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:56.560842" elapsed="0.001894"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.560824" elapsed="0.001933"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.563349" 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-08-10T02:12:56.562939" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.563931" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:56.563581" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:56.564021" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:12:56.564198" 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-08-10T02:12:56.560511" 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-08-10T02:12:56.564437" 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-08-10T02:12:56.534996" 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-08-10T02:12:56.574027" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:56.573726" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:56.584113" level="INFO">GET Request : url=http://10.30.170.209: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=node0nfzb4suzg430tswbo13ptsj94.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:56.585427" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:56.585716" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:56.574210" elapsed="0.011565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.586819" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:56.586213" elapsed="0.000708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.593100" 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-08-10T02:12:56.587315" elapsed="0.005891"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:56.595474" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:56.593276" elapsed="0.002249"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.593257" elapsed="0.002291"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:56.599776" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:56.599822" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:56.595734" elapsed="0.004110"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:56.602097" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:56.599921" elapsed="0.002233"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.599903" elapsed="0.002275"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:56.602211" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:56.602423" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:56.602466" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>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-08-10T02:12:56.573292" elapsed="0.029197"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:56.604938" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:56.603052" elapsed="0.001933"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.603034" elapsed="0.001973"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.605618" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:56.605201" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.606191" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:56.605844" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:56.606266" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:56.606464" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:56.602723" 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-08-10T02:12:56.606682" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:12:56.572655" elapsed="0.034473"/>
</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-08-10T02:12:56.515159" elapsed="0.092026"/>
</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-08-10T02:12:56.504945" elapsed="0.102295"/>
</kw>
<doc>Add flow match IP and Ethertype IP</doc>
<status status="PASS" start="2026-08-10T02:12:56.470158" elapsed="0.137223"/>
</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-08-10T02:12:56.627733" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0nfzb4suzg430tswbo13ptsj94.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:56.627795" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:56.627919" 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-08-10T02:12:56.615810" elapsed="0.012144"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.633371" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:56.628292" elapsed="0.005178"/>
</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-08-10T02:12:56.615398" elapsed="0.018200"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-08-10T02:12:56.639217" 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-08-10T02:12:56.639370" 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-08-10T02:12:56.639080" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:56.640013" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfa8a390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:56.639631" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.640552" 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-08-10T02:12:56.640251" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.641037" 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-08-10T02:12:56.640767" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.641543" 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-08-10T02:12:56.641249" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:56.642291" 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-08-10T02:12:56.641758" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.642849" 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-08-10T02:12:56.642533" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.643400" 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-08-10T02:12:56.643078" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.643940" 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-08-10T02:12:56.643630" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.644541" 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-08-10T02:12:56.644216" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.645077" 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-08-10T02:12:56.644774" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.645634" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777dfa8a390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:56.645307" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${flowfile2}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:12:56.638650" elapsed="0.007079"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.653921" 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-08-10T02:12:56.653674" elapsed="0.000304"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:56.665842" level="INFO">POST Request : url=http://10.30.170.209: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=node0nfzb4suzg430tswbo13ptsj94.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-08-10T02:12:56.665927" level="INFO">POST Response : url=http://10.30.170.209:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.209: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-08-10T02:12:56.666115" 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-08-10T02:12:56.654131" elapsed="0.012020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.670282" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:56.666457" elapsed="0.003953"/>
</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-08-10T02:12:56.653219" elapsed="0.017323"/>
</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-08-10T02:12:56.686504" 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-08-10T02:12:56.686629" 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-08-10T02:12:56.686366" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-08-10T02:12:56.687218" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec038130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-08-10T02:12:56.686843" elapsed="0.000404"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.687728" 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-08-10T02:12:56.687452" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.688225" 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-08-10T02:12:56.687940" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-08-10T02:12:56.688724" 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-08-10T02:12:56.688456" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-08-10T02:12:56.689475" 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-08-10T02:12:56.688935" elapsed="0.000570"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.690022" 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-08-10T02:12:56.689698" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.690588" 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-08-10T02:12:56.690252" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.691136" 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-08-10T02:12:56.690816" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.691687" 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-08-10T02:12:56.691378" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.692278" 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-08-10T02:12:56.691917" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.692850" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7777ec038130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:12:56.692532" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-08-10T02:12:56.685997" elapsed="0.006947"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.693527" 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-08-10T02:12:56.693130" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.693980" 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-08-10T02:12:56.693743" 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-08-10T02:12:56.703111" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:56.702813" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:56.710803" level="INFO">GET Request : url=http://10.30.170.209: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=node0nfzb4suzg430tswbo13ptsj94.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:56.711069" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:56.711226" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:56.703291" elapsed="0.007971"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.711917" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:56.711568" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.715492" 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-08-10T02:12:56.712223" elapsed="0.003349"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:56.718619" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:56.715671" elapsed="0.003016"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.715643" elapsed="0.003074"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-08-10T02:12:56.723034" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:56.723098" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-08-10T02:12:56.718959" elapsed="0.004170"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:56.725953" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:56.723230" elapsed="0.002778"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.723204" elapsed="0.002827"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:56.726064" elapsed="0.000029"/>
</return>
<msg time="2026-08-10T02:12:56.726256" level="INFO">${presence_flow} = True</msg>
<msg time="2026-08-10T02:12:56.726299" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-08-10T02:12:56.702462" elapsed="0.023858"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:56.728771" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:56.726896" elapsed="0.001920"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.726879" elapsed="0.001958"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.729431" 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-08-10T02:12:56.729021" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.730002" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:56.729657" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:56.730076" elapsed="0.000028"/>
</return>
<msg time="2026-08-10T02:12:56.730252" 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-08-10T02:12:56.726569" elapsed="0.003707"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-08-10T02:12:56.730491" 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-08-10T02:12:56.701870" elapsed="0.029068"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.740098" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-10T02:12:56.739787" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:56.747287" level="INFO">GET Request : url=http://10.30.170.209: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=node0nfzb4suzg430tswbo13ptsj94.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:56.748067" level="INFO">GET Response : url=http://10.30.170.209: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-08-10T02:12:56.748196" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-08-10T02:12:56.740280" elapsed="0.007942"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.748716" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:56.748461" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.754936" 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-08-10T02:12:56.748939" elapsed="0.006157"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-08-10T02:12:56.758655" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:56.755249" elapsed="0.003456"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.755208" elapsed="0.003518"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-08-10T02:12:56.762767" level="INFO">${pres} = True</msg>
<msg time="2026-08-10T02:12:56.762813" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-08-10T02:12:56.758901" elapsed="0.003935"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:56.764947" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:56.762912" elapsed="0.002090"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.762894" elapsed="0.002131"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-08-10T02:12:56.765058" elapsed="0.000026"/>
</return>
<msg time="2026-08-10T02:12:56.765281" level="INFO">${presence_table} = True</msg>
<msg time="2026-08-10T02:12:56.765325" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>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-08-10T02:12:56.739372" elapsed="0.025994"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-08-10T02:12:56.767939" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:56.765935" elapsed="0.002049"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.765918" elapsed="0.002087"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.768632" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:56.768187" elapsed="0.000471"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.769204" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-10T02:12:56.768857" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-08-10T02:12:56.769280" elapsed="0.000027"/>
</return>
<msg time="2026-08-10T02:12:56.769475" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-08-10T02:12:56.765607" 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-08-10T02:12:56.769693" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-08-10T02:12:56.738723" elapsed="0.031415"/>
</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-08-10T02:12:56.682163" elapsed="0.088032"/>
</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-08-10T02:12:56.670908" elapsed="0.099341"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:12:56.771420" 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-08-10T02:12:56.770993" elapsed="0.000454"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-08-10T02:12:56.771662" elapsed="0.000026"/>
</return>
<status status="PASS" start="2026-08-10T02:12:56.771519" elapsed="0.000200"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.771501" elapsed="0.000242"/>
</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-08-10T02:12:56.771920" elapsed="0.000020"/>
</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-08-10T02:12:56.772094" 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-08-10T02:12:56.772271" 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-08-10T02:12:56.772492" 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-08-10T02:12:56.772661" 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-08-10T02:12:56.772820" elapsed="0.000019"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:56.772981" elapsed="0.000019"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-08-10T02:12:56.773229" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:56.773059" elapsed="0.000221"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:12:56.773043" elapsed="0.000259"/>
</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-08-10T02:12:56.770642" elapsed="0.002731"/>
</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-08-10T02:12:56.607671" elapsed="0.165746"/>
</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-08-10T02:12:56.782595" level="INFO">DELETE Request : url=http://10.30.170.209: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=node0nfzb4suzg430tswbo13ptsj94.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:12:56.782676" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:12:56.774464" elapsed="0.008275"/>
</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-08-10T02:12:56.774100" elapsed="0.008692"/>
</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-08-10T02:12:56.789086" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-08-10T02:12:56.788770" elapsed="0.000592"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:56.788745" elapsed="0.000654"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:56.842429" 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-08-10T02:12:56.789593" elapsed="0.052908"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:56.957749" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 1.716 seconds
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:56.842682" elapsed="0.115135"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:56.957976" elapsed="0.000166"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-08-10T02:12:56.788463" elapsed="0.169735"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:56.958436" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:12:56.958362" elapsed="0.000137"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-08-10T02:12:56.773878" elapsed="0.184671"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-08-10T02:12:52.671701" elapsed="4.286878"/>
</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-08-10T02:12:57.037806" 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-08-10T02:12:57.037577" elapsed="0.000276"/>
</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-08-10T02:12:57.040156" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:57.039863" elapsed="0.000350"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:57.039842" elapsed="0.000396"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:57.040560" 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-08-10T02:12:57.040666" 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-08-10T02:12:57.040405" elapsed="0.000287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:57.041253" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.177" 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-08-10T02:12:57.040844" elapsed="0.000455"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:57.041848" 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-08-10T02:12:57.041477" elapsed="0.000397"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:12:57.042734" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:57.042810" 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-08-10T02:12:57.042451" elapsed="0.000382"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:12:57.042991" elapsed="0.000313"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:57.044156" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:57.378349" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:55 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:57.043842" elapsed="0.334676"/>
</kw>
<msg time="2026-08-10T02:12:57.378700" 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-08-10T02:12:57.043489" elapsed="0.335306"/>
</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-08-10T02:12:57.042090" elapsed="0.336831"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:12:57.379523" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-08-10T02:12:58.592368" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:12:58.592781" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:12:58.592887" 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-08-10T02:12:57.379209" elapsed="1.213737"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:58.593506" elapsed="0.000640"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:58.595382" 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-08-10T02:12:58.594668" elapsed="0.000841"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:58.596066" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:58.595692" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:58.595636" elapsed="0.000601"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:12:58.596643" elapsed="0.000074"/>
</return>
<status status="PASS" start="2026-08-10T02:12:58.596393" elapsed="0.000399"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:58.596322" elapsed="0.000522"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:58.596922" 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-08-10T02:12:58.602862" elapsed="0.000761"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-08-10T02:12:58.604053" elapsed="0.000403"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:58.604639" elapsed="0.000098"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:12:58.597694" elapsed="0.007097"/>
</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-08-10T02:12:57.039384" elapsed="1.565502"/>
</kw>
<msg time="2026-08-10T02:12:58.604950" 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-08-10T02:12:57.038816" elapsed="1.566191"/>
</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-08-10T02:12:57.038375" elapsed="1.566716"/>
</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-08-10T02:12:58.607127" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:58.606831" elapsed="0.000353"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:58.606813" elapsed="0.000395"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:58.607529" 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-08-10T02:12:58.607633" 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-08-10T02:12:58.607383" elapsed="0.000276"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:58.608203" 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.177" 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-08-10T02:12:58.607810" elapsed="0.000440"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:58.608873" 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-08-10T02:12:58.608495" elapsed="0.000406"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:12:58.609779" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:58.609858" 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-08-10T02:12:58.609483" 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-08-10T02:12:58.610038" elapsed="0.000334"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:58.611205" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:58.951624" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:57 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:58.610893" elapsed="0.340861"/>
</kw>
<msg time="2026-08-10T02:12:58.951859" 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-08-10T02:12:58.610540" elapsed="0.341392"/>
</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-08-10T02:12:58.609117" elapsed="0.342919"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:12:58.952551" 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-08-10T02:12:58.995443" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:12:58.995696" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:12:58.995794" 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-08-10T02:12:58.952270" elapsed="0.043574"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:58.996222" elapsed="0.000562"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:58.997928" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:58.997248" elapsed="0.000774"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:58.998529" elapsed="0.000044"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:12:58.998190" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:58.998140" 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-08-10T02:12:58.999062" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-08-10T02:12:58.998829" elapsed="0.000365"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:58.998796" elapsed="0.000449"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:12:58.999318" elapsed="0.000065"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:12:59.005137" elapsed="0.000658"/>
</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-08-10T02:12:59.005964" elapsed="0.000164"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:12:59.006274" elapsed="0.000115"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:12:59.000050" elapsed="0.006393"/>
</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-08-10T02:12:58.606329" elapsed="0.400206"/>
</kw>
<msg time="2026-08-10T02:12:59.006590" 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-08-10T02:12:58.605749" elapsed="0.400892"/>
</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-08-10T02:12:58.605271" elapsed="0.401453"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-08-10T02:12:57.038054" elapsed="1.968728"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:12:59.011595" 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-08-10T02:12:59.011200" elapsed="0.000422"/>
</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-08-10T02:12:59.013318" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:12:59.013417" 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-08-10T02:12:59.013025" elapsed="0.000416"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:12:59.013598" elapsed="0.000313"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:12:59.014763" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:12:59.349352" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:58 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:12:59.014445" elapsed="0.335016"/>
</kw>
<msg time="2026-08-10T02:12:59.349533" 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-08-10T02:12:59.014077" elapsed="0.335521"/>
</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-08-10T02:12:59.012548" elapsed="0.337145"/>
</kw>
<msg time="2026-08-10T02:12:59.349747" 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-08-10T02:12:59.012138" elapsed="0.337658"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:12:59.011804" elapsed="0.338072"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-08-10T02:12:59.349922" elapsed="0.000037"/>
</return>
<msg time="2026-08-10T02:12:59.350111" 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-08-10T02:12:59.010663" elapsed="0.339475"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:59.350807" 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-08-10T02:12:59.350414" elapsed="0.000435"/>
</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-08-10T02:12:59.353042" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:12:59.350927" elapsed="0.002170"/>
</branch>
<status status="PASS" start="2026-08-10T02:12:59.350904" elapsed="0.002218"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:59.353613" level="INFO">Start mininet --topo tree,1 to 10.30.170.209</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:12:59.353306" elapsed="0.000352"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:59.356112" level="INFO">sudo mn --controller 'remote,ip=10.30.170.209,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-08-10T02:12:59.353818" elapsed="0.002350"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:59.515851" 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-08-10T02:12:59.356326" elapsed="0.159667"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:59.516533" 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-08-10T02:12:59.516222" elapsed="0.000359"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:12:59.518368" 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-08-10T02:12:59.516734" elapsed="0.001707"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:12:59.528631" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "ptcp:6654"
        Controller "tcp:10.30.170.209: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"
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-08-10T02:12:59.518649" elapsed="0.010047"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-08-10T02:12:59.528748" elapsed="0.000039"/>
</return>
<msg time="2026-08-10T02:12:59.528942" 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-08-10T02:12:57.035426" elapsed="2.493628"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:12:59.529610" 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-08-10T02:12:59.529229" elapsed="0.000425"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:12:59.530167" level="INFO">Creating Session using : alias=session, url=http://10.30.170.209:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7777dfc2ed10&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-08-10T02:12:59.529811" elapsed="0.000588"/>
</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-08-10T02:12:59.540159" level="INFO">GET Request : url=http://10.30.170.209: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-08-10T02:12:59.540433" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01aqtjeu8h4p5q1b5bzf2gjpcta5.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 09-Aug-2026 02:12:59 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-08-10T02:12:59.540712" 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-08-10T02:12:59.531520" elapsed="0.009242"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:12:59.544483" 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-08-10T02:12:59.541057" elapsed="0.003522"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:12:59.548663" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:12:59.548780" 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-08-10T02:12:59.544917" elapsed="0.003898"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:12:59.549475" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-08-10T02:12:59.549696" 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-08-10T02:12:59.549047" elapsed="0.000787">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-08-10T02:12:59.531212" elapsed="0.018834">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:13:00.561074" level="INFO">GET Request : url=http://10.30.170.209: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=node01aqtjeu8h4p5q1b5bzf2gjpcta5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:13:00.561509" level="INFO">GET Response : url=http://10.30.170.209:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-08-10T02:13:00.561675" 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-08-10T02:13:00.551878" elapsed="0.009835"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:00.565858" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:00.562037" elapsed="0.003897"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:13:00.569535" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-08-10T02:13:00.569649" 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-08-10T02:13:00.566199" elapsed="0.003484"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-08-10T02:13:00.570403" 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-08-10T02:13:00.569983" elapsed="0.000500"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-08-10T02:13:00.551081" elapsed="0.019490"/>
</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-08-10T02:12:59.530577" elapsed="1.040058"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-08-10T02:12:57.035031" elapsed="3.535686"/>
</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-08-10T02:13:00.572178" 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-08-10T02:13:00.571809" elapsed="0.000407"/>
</kw>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:13:00.573118" level="INFO">${controller_opt} =   tcp:10.30.170.209:6633 tcp:10.30.170.209: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-08-10T02:13:00.572470" elapsed="0.000685"/>
</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-08-10T02:13:00.583786" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:00.583485" elapsed="0.000358"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:00.583461" elapsed="0.000408"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:00.584158" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:00.584260" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:00.584021" elapsed="0.000266"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:00.584834" level="INFO">Attempting to execute command "sudo ovs-vsctl set bridge s1 protocols=OpenFlow13" on remote system "10.30.171.177" 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-08-10T02:13:00.584456" elapsed="0.000424"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:00.585439" 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-08-10T02:13:00.585037" elapsed="0.000429"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:00.586408" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:00.586488" 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-08-10T02:13:00.586106" 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-08-10T02:13:00.586672" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:00.587877" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:00.917982" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:12:59 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:00.587562" elapsed="0.330561"/>
</kw>
<msg time="2026-08-10T02:13:00.918200" 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-08-10T02:13:00.587163" elapsed="0.331119"/>
</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-08-10T02:13:00.585686" elapsed="0.332719"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:00.918871" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-08-10T02:13:00.941362" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:00.941605" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:13:00.941703" 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-08-10T02:13:00.918638" elapsed="0.023116"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:00.942120" elapsed="0.000499"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:00.943846" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:00.943195" elapsed="0.000772"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:00.944482" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:00.944136" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:00.944088" 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-08-10T02:13:00.944997" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:13:00.944761" elapsed="0.000367"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:00.944728" elapsed="0.000453"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:00.945254" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-08-10T02:13:00.950997" elapsed="0.000202"/>
</kw>
<msg time="2026-08-10T02:13:00.951260" 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-08-10T02:13:00.950212" elapsed="0.001155"/>
</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-08-10T02:13:00.951590" elapsed="0.000029"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:00.951811" elapsed="0.000027"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:13:00.945982" elapsed="0.005977"/>
</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-08-10T02:13:00.582904" elapsed="0.369181"/>
</kw>
<msg time="2026-08-10T02:13:00.952158" 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-08-10T02:13:00.582308" elapsed="0.369913"/>
</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-08-10T02:13:00.581701" elapsed="0.370650"/>
</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-08-10T02:13:00.955362" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:00.954949" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:00.954924" elapsed="0.000550"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:00.955851" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:00.956009" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:00.955687" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:00.956802" level="INFO">Attempting to execute command "sudo ovs-vsctl set-controller s1   tcp:10.30.170.209:6633 tcp:10.30.170.209:6653" on remote system "10.30.171.177" 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-08-10T02:13:00.956254" elapsed="0.000612"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:00.957626" 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-08-10T02:13:00.957084" elapsed="0.000579"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:00.958906" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:00.959014" 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-08-10T02:13:00.958524" elapsed="0.000524"/>
</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-08-10T02:13:00.959262" elapsed="0.000458"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:00.963945" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:01.298127" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:00 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:00.963597" elapsed="0.334726"/>
</kw>
<msg time="2026-08-10T02:13:01.298414" 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-08-10T02:13:00.963161" elapsed="0.335320"/>
</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-08-10T02:13:00.957958" elapsed="0.340630"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:01.299007" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1   tcp:10.30.170.209:6633 tcp:10.30.170.209:6653'.</msg>
<msg time="2026-08-10T02:13:01.321412" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:01.321541" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:13:01.321585" 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-08-10T02:13:01.298801" elapsed="0.022807"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:01.321795" elapsed="0.000220"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:01.322570" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:01.322242" elapsed="0.000371"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:01.322858" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:01.322711" elapsed="0.000198"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:01.322686" elapsed="0.000245"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:13:01.323088" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-08-10T02:13:01.322983" elapsed="0.000168"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:01.322968" elapsed="0.000206"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:01.323208" elapsed="0.000014"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-08-10T02:13:01.326540" elapsed="0.000146"/>
</kw>
<msg time="2026-08-10T02:13:01.326730" 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-08-10T02:13:01.325954" elapsed="0.000839"/>
</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-08-10T02:13:01.326953" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:01.327112" 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-08-10T02:13:01.323577" elapsed="0.003617"/>
</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-08-10T02:13:00.954201" elapsed="0.373084"/>
</kw>
<msg time="2026-08-10T02:13:01.327354" 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-08-10T02:13:00.953426" elapsed="0.373976"/>
</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-08-10T02:13:00.952632" elapsed="0.374849"/>
</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.209:6633 tcp:10.30.170.209:6653 and OF version ${ofversion}.</doc>
<status status="PASS" start="2026-08-10T02:13:00.581222" elapsed="0.746318"/>
</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-08-10T02:13:01.339674" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:01.339223" elapsed="0.000535"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:01.339192" elapsed="0.000602"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:01.340172" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:01.340321" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:01.340007" elapsed="0.000375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:01.341214" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.177" 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-08-10T02:13:01.340643" elapsed="0.000637"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:01.341983" 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-08-10T02:13:01.341592" elapsed="0.000420"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:01.342926" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:01.343005" 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-08-10T02:13:01.342648" elapsed="0.000382"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:13:01.343187" elapsed="0.000554"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:01.344647" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:01.679693" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:01 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:01.344271" elapsed="0.335652"/>
</kw>
<msg time="2026-08-10T02:13:01.680032" 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-08-10T02:13:01.343912" elapsed="0.336224"/>
</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-08-10T02:13:01.342231" elapsed="0.338058"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:01.680899" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:13:01.764274" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:01.764609" level="INFO">${stdout} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
        fail_mode: secure
        Port s1-eth2
            In...</msg>
<msg time="2026-08-10T02:13:01.764736" 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-08-10T02:13:01.680602" elapsed="0.084187"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:01.765177" elapsed="0.000596"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:01.766963" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:01.766275" 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-08-10T02:13:01.767587" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:01.767237" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:01.767183" elapsed="0.000568"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:13:01.768104" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-08-10T02:13:01.767868" elapsed="0.000368"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:01.767835" elapsed="0.000454"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:01.768397" 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-08-10T02:13:01.774636" elapsed="0.000151"/>
</kw>
<msg time="2026-08-10T02:13:01.774832" 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-08-10T02:13:01.774016" elapsed="0.000879"/>
</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-08-10T02:13:01.775053" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:01.775211" 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-08-10T02:13:01.769116" elapsed="0.006176"/>
</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-08-10T02:13:01.338476" elapsed="0.436927"/>
</kw>
<msg time="2026-08-10T02:13:01.775460" 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-08-10T02:13:01.337652" elapsed="0.437855"/>
</kw>
<msg time="2026-08-10T02:13:01.775624" level="INFO">${output} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
        fail_mode: secure
        Port s1-eth2
            In...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:13:01.336939" elapsed="0.438796"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:01.776150" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
        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-08-10T02:13:01.775899" elapsed="0.000298"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:13:01.776727" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:13:01.776851" level="FAIL">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209:6633"\n        Controller "tcp:10.30.170.209:6653"\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-08-10T02:13:01.776365" elapsed="0.000570">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209:6633"\n        Controller "tcp:10.30.170.209:6653"\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-08-10T02:13:01.336321" elapsed="0.440736">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209:6633"\n        Controller "tcp:10.30.170.209:6653"\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-08-10T02:13:02.794498" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:02.794136" elapsed="0.000437"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:02.794111" elapsed="0.000490"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:02.794935" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:02.795054" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:02.794759" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:02.795655" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.177" 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-08-10T02:13:02.795233" elapsed="0.000469"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:02.796243" 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-08-10T02:13:02.795856" elapsed="0.000414"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:02.797176" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:02.797255" 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-08-10T02:13:02.796894" elapsed="0.000385"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:13:02.797452" elapsed="0.000326"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:02.798647" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:03.129245" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:01 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:02.798307" elapsed="0.331198"/>
</kw>
<msg time="2026-08-10T02:13:03.129622" 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-08-10T02:13:02.797943" elapsed="0.331795"/>
</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-08-10T02:13:02.796502" elapsed="0.333390"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:03.130721" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:13:03.203878" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:03.204155" level="INFO">${stdout} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
        fail_mode: secure
        Port s1-eth2
            In...</msg>
<msg time="2026-08-10T02:13:03.204272" 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-08-10T02:13:03.130361" elapsed="0.073964"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:03.204767" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:03.206431" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:03.205748" elapsed="0.000777"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:03.207020" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:03.206716" elapsed="0.000409"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:03.206664" elapsed="0.000511"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:13:03.207642" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:13:03.207292" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:03.207259" elapsed="0.000571"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:03.207911" 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-08-10T02:13:03.212761" elapsed="0.000218"/>
</kw>
<msg time="2026-08-10T02:13:03.213043" 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-08-10T02:13:03.211921" elapsed="0.001207"/>
</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-08-10T02:13:03.213382" elapsed="0.000035"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:03.213616" 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-08-10T02:13:03.208443" elapsed="0.005288"/>
</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-08-10T02:13:02.793593" elapsed="0.420263"/>
</kw>
<msg time="2026-08-10T02:13:03.213930" 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-08-10T02:13:02.792879" elapsed="0.421114"/>
</kw>
<msg time="2026-08-10T02:13:03.214148" level="INFO">${output} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
        fail_mode: secure
        Port s1-eth2
            In...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:13:02.792330" elapsed="0.421854"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:03.214863" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
        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-08-10T02:13:03.214494" elapsed="0.000436"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:13:03.215692" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:13:03.215839" level="FAIL">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209:6633"\n        Controller "tcp:10.30.170.209:6653"\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-08-10T02:13:03.215141" elapsed="0.000792">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209:6633"\n        Controller "tcp:10.30.170.209:6653"\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-08-10T02:13:02.791745" elapsed="0.424303">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209:6633"\n        Controller "tcp:10.30.170.209:6653"\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-08-10T02:13:04.232527" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:04.232099" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:04.232075" elapsed="0.000555"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:04.234484" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:04.234634" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:04.232780" elapsed="0.001884"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:04.235230" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.177" 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-08-10T02:13:04.234832" elapsed="0.000446"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:04.235861" 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-08-10T02:13:04.235470" elapsed="0.000418"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:04.236814" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:04.236895" 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-08-10T02:13:04.236530" 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-08-10T02:13:04.237138" elapsed="0.000347"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:04.238329" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:04.568756" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:03 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:04.238012" elapsed="0.330913"/>
</kw>
<msg time="2026-08-10T02:13:04.569015" 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-08-10T02:13:04.237656" elapsed="0.331445"/>
</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-08-10T02:13:04.236106" elapsed="0.333112"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:04.569754" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:13:04.592092" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:04.592399" level="INFO">${stdout} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
        fail_mode: secure
        Port s1-eth2
            In...</msg>
<msg time="2026-08-10T02:13:04.592519" 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-08-10T02:13:04.569504" elapsed="0.023067"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:04.592942" elapsed="0.000527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:04.594699" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:04.594004" elapsed="0.000789"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:04.595263" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:04.594964" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:04.594914" elapsed="0.000549"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:13:04.595818" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:13:04.595582" elapsed="0.000365"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:04.595548" elapsed="0.000451"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:04.596071" 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-08-10T02:13:04.601590" elapsed="0.000212"/>
</kw>
<msg time="2026-08-10T02:13:04.601864" 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-08-10T02:13:04.600716" elapsed="0.001245"/>
</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-08-10T02:13:04.602188" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:04.602588" 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-08-10T02:13:04.596806" elapsed="0.005903"/>
</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-08-10T02:13:04.231552" elapsed="0.371283"/>
</kw>
<msg time="2026-08-10T02:13:04.602911" 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-08-10T02:13:04.230861" elapsed="0.372114"/>
</kw>
<msg time="2026-08-10T02:13:04.603130" level="INFO">${output} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
        fail_mode: secure
        Port s1-eth2
            In...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:13:04.230308" elapsed="0.372859"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:04.603853" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
        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-08-10T02:13:04.603420" elapsed="0.000502"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:13:04.604662" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:13:04.604815" level="FAIL">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209:6633"\n        Controller "tcp:10.30.170.209:6653"\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-08-10T02:13:04.604136" elapsed="0.000784">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209:6633"\n        Controller "tcp:10.30.170.209:6653"\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-08-10T02:13:04.229779" elapsed="0.375307">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209:6633"\n        Controller "tcp:10.30.170.209:6653"\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-08-10T02:13:05.622934" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:05.622445" elapsed="0.000589"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:05.622413" elapsed="0.000656"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:05.623503" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:05.623665" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:05.623280" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:05.624285" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.177" 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-08-10T02:13:05.623897" elapsed="0.000450"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:05.624895" 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-08-10T02:13:05.624505" elapsed="0.000416"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:05.626114" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:05.626192" 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-08-10T02:13:05.625830" elapsed="0.000386"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:13:05.626392" elapsed="0.000326"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:05.627628" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:05.973515" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:04 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:05.627292" elapsed="0.346386"/>
</kw>
<msg time="2026-08-10T02:13:05.973766" 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-08-10T02:13:05.626923" elapsed="0.346926"/>
</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-08-10T02:13:05.625417" elapsed="0.348552"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:05.974514" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:13:06.058462" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:06.059018" level="INFO">${stdout} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
            is_connected: true
        fail_mode: secure
    ...</msg>
<msg time="2026-08-10T02:13:06.059138" 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-08-10T02:13:05.974231" elapsed="0.084967"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:06.059963" elapsed="0.000818"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:06.062115" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:06.061386" elapsed="0.000825"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:06.062799" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:06.062443" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:06.062379" 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-08-10T02:13:06.063329" elapsed="0.000174"/>
</return>
<status status="PASS" start="2026-08-10T02:13:06.063085" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:06.063049" elapsed="0.000589"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:06.063719" elapsed="0.000038"/>
</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-08-10T02:13:06.069257" elapsed="0.000495"/>
</kw>
<msg time="2026-08-10T02:13:06.069852" 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-08-10T02:13:06.067752" elapsed="0.002243"/>
</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-08-10T02:13:06.070252" elapsed="0.000033"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:06.070521" 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-08-10T02:13:06.064325" elapsed="0.006344"/>
</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-08-10T02:13:05.621672" elapsed="0.449156"/>
</kw>
<msg time="2026-08-10T02:13:06.070913" 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-08-10T02:13:05.620744" elapsed="0.450241"/>
</kw>
<msg time="2026-08-10T02:13:06.071175" level="INFO">${output} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
            is_connected: true
        fail_mode: secure
    ...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:13:05.620000" elapsed="0.451215"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:06.071995" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        Controller "tcp:10.30.170.209:6653"
            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-08-10T02:13:06.071501" elapsed="0.000561"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:13:06.072831" 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-08-10T02:13:06.072277" elapsed="0.000653"/>
</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-08-10T02:13:05.619278" elapsed="0.453856"/>
</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-08-10T02:13:01.327706" elapsed="4.745507"/>
</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-08-10T02:13:06.080224" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:06.079825" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:06.079787" elapsed="0.000533"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:06.080649" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:06.080760" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:06.080499" elapsed="0.000289"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:06.081327" level="INFO">Attempting to execute command "sudo timeout --signal=KILL 30 ovsdb-client monitor Controller target,role" on remote system "10.30.171.177" 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-08-10T02:13:06.080939" elapsed="0.000455"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:06.081977" 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-08-10T02:13:06.081553" elapsed="0.000452"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:06.082920" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:06.082999" 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-08-10T02:13:06.082643" elapsed="0.000380"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-10T02:13:06.083187" elapsed="0.000387"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:06.084449" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:06.435406" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:05 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:06.084106" elapsed="0.351624"/>
</kw>
<msg time="2026-08-10T02:13:06.435960" 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-08-10T02:13:06.083747" elapsed="0.352392"/>
</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-08-10T02:13:06.082225" elapsed="0.354209"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:06.437599" level="INFO">Executing command 'sudo timeout --signal=KILL 30 ovsdb-client monitor Controller target,role'.</msg>
<msg time="2026-08-10T02:13:36.526117" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:13:36.526546" level="INFO">${stdout} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
966037e8-4fe2-4564-9933-9012d3b878ec initial "tc...</msg>
<msg time="2026-08-10T02:13:36.526658" 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-08-10T02:13:06.437000" elapsed="30.089713"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:36.527166" elapsed="0.000519"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.528802" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:36.528134" elapsed="0.000763"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:36.529438" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:36.529066" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:36.529019" elapsed="0.000575"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:13:36.529949" elapsed="0.000065"/>
</return>
<status status="PASS" start="2026-08-10T02:13:36.529712" elapsed="0.000376"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:36.529677" elapsed="0.000467"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:36.530400" 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-08-10T02:13:36.536997" elapsed="0.000201"/>
</kw>
<msg time="2026-08-10T02:13:36.537259" 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-08-10T02:13:36.536190" elapsed="0.001180"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:36.537590" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:36.537810" elapsed="0.000027"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:13:36.531113" elapsed="0.006810"/>
</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-08-10T02:13:06.079206" elapsed="30.458840"/>
</kw>
<msg time="2026-08-10T02:13:36.538140" 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-08-10T02:13:06.075033" elapsed="30.463170"/>
</kw>
<msg time="2026-08-10T02:13:36.538394" level="INFO">${output} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
966037e8-4fe2-4564-9933-9012d3b878ec initial "tc...</msg>
<var>${output}</var>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>sudo timeout --signal=KILL ${timeout} ovsdb-client monitor Controller target,role</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:13:06.074205" elapsed="30.464227"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.539110" level="INFO">${output} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
966037e8-4fe2-4564-9933-9012d3b878ec initial "tc...</msg>
<arg>${output}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:13:36.538661" elapsed="0.000509"/>
</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-08-10T02:13:36.539450" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.540501" level="INFO">row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
966037e8-4fe2-4564-9933-9012d3b878ec initial "tcp:10.30.170.209:6633" []
cc49943a-5864-43d3-88d4-d6d4f092ef1c initial "tcp:10.30.170.209:6653" master

row                                  action target                   role
------------------------------------ ------ ------------------------ ------
966037e8-4fe2-4564-9933-9012d3b878ec old                             []
                                     new    "tcp:10.30.170.209:6633" master
cc49943a-5864-43d3-88d4-d6d4f092ef1c old                             master
                                     new    "tcp:10.30.170.209:6653" other

row                                  action target                   role
------------------------------------ ------ ------------------------ ------
966037e8-4fe2-4564-9933-9012d3b878ec old                             master
                                     new    "tcp:10.30.170.209:6633" other
cc49943a-5864-43d3-88d4-d6d4f092ef1c old                             other
                                     new    "tcp:10.30.170.209:6653" master

row                                  action target                   role
------------------------------------ ------ ------------------------ ------
966037e8-4fe2-4564-9933-9012d3b878ec old                             other
                                     new    "tcp:10.30.170.209:6633" master
cc49943a-5864-43d3-88d4-d6d4f092ef1c old                             master
                                     new    "tcp:10.30.170.209:6653" other

row                                  action target                   role
------------------------------------ ------ ------------------------ ------
966037e8-4fe2-4564-9933-9012d3b878ec old                             master
                                     new    "tcp:10.30.170.209:6633" other
cc49943a-5864-43d3-88d4-d6d4f092ef1c old                             other
                                     new    "tcp:10.30.170.209:6653" master

row                                  action target                   role
------------------------------------ ------ ------------------------ ------
966037e8-4fe2-4564-9933-9012d3b878ec old                             other
                                     new    "tcp:10.30.170.209:6633" master
cc49943a-5864-43d3-88d4-d6d4f092ef1c old                             master
                                     new    "tcp:10.30.170.209:6653" other

row                                  action target                   role
------------------------------------ ------ ------------------------ -----
cc49943a-5864-43d3-88d4-d6d4f092ef1c old                             other
                                     new    "tcp:10.30.170.209:6653" []</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:36.540142" elapsed="0.000450"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:13:36.540653" elapsed="0.000039"/>
</return>
<arg>30</arg>
<doc>Execute OvsVsctl List Controllers Command and check for master connection.</doc>
<status status="PASS" start="2026-08-10T02:13:06.073591" elapsed="30.467231"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.542496" 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-08-10T02:13:36.541862" elapsed="0.000673"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-08-10T02:13:36.542839" elapsed="0.000037"/>
</return>
<status status="PASS" start="2026-08-10T02:13:36.542639" elapsed="0.000278"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:36.542614" elapsed="0.000336"/>
</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-08-10T02:13:36.543247" elapsed="0.000038"/>
</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-08-10T02:13:36.543516" 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-08-10T02:13:36.543696" 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-08-10T02:13:36.543869" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:36.544034" 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-08-10T02:13:36.544195" 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-08-10T02:13:36.544373" 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-08-10T02:13:36.544627" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:36.544456" elapsed="0.000223"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:13:36.544440" elapsed="0.000262"/>
</if>
<arg>8723</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-08-10T02:13:36.541370" elapsed="0.003380"/>
</kw>
<doc>Make a second connection from switch s1 to a controller</doc>
<status status="PASS" start="2026-08-10T02:13:00.570804" elapsed="35.973991"/>
</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-08-10T02:13:36.545910" 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-08-10T02:13:36.545659" elapsed="0.000277"/>
</kw>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.546517" level="INFO">${controller_opt} =   tcp:10.30.170.209: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-08-10T02:13:36.546084" elapsed="0.000460"/>
</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-08-10T02:13:36.556246" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:36.555966" elapsed="0.000337"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:36.555948" elapsed="0.000378"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:36.556618" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:36.556722" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:36.556492" elapsed="0.000257"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.557274" level="INFO">Attempting to execute command "sudo ovs-vsctl set bridge s1 protocols=OpenFlow13" on remote system "10.30.171.177" 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-08-10T02:13:36.556899" elapsed="0.000424"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:36.557883" 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-08-10T02:13:36.557498" elapsed="0.000410"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.559024" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:36.559101" 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-08-10T02:13:36.558758" elapsed="0.000367"/>
</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-08-10T02:13:36.559283" elapsed="0.000337"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:36.560478" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:36.914502" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:06 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:36.560142" elapsed="0.354672"/>
</kw>
<msg time="2026-08-10T02:13:36.914910" 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-08-10T02:13:36.559788" elapsed="0.355206"/>
</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-08-10T02:13:36.558121" elapsed="0.356992"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:36.915644" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-08-10T02:13:36.938657" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:36.938918" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:13:36.939018" 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-08-10T02:13:36.915387" elapsed="0.023681"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:36.939526" elapsed="0.000487"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.941148" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:36.940516" elapsed="0.000727"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:36.941762" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:36.941458" elapsed="0.000416"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:36.941404" elapsed="0.000521"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:13:36.942275" elapsed="0.000093"/>
</return>
<status status="PASS" start="2026-08-10T02:13:36.942041" elapsed="0.000408"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:36.942009" elapsed="0.000492"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:36.942607" 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-08-10T02:13:36.950087" elapsed="0.000363"/>
</kw>
<msg time="2026-08-10T02:13:36.950599" 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-08-10T02:13:36.948611" elapsed="0.002132"/>
</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-08-10T02:13:36.951103" elapsed="0.000048"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:36.951462" 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-08-10T02:13:36.943323" elapsed="0.008254"/>
</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-08-10T02:13:36.555446" elapsed="0.396259"/>
</kw>
<msg time="2026-08-10T02:13:36.951778" 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-08-10T02:13:36.554884" elapsed="0.396959"/>
</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-08-10T02:13:36.554253" elapsed="0.397702"/>
</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-08-10T02:13:36.955035" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:36.954636" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:36.954607" elapsed="0.000538"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:36.955543" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:36.955646" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:36.955390" elapsed="0.000283"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.956205" level="INFO">Attempting to execute command "sudo ovs-vsctl set-controller s1   tcp:10.30.170.209:6633" on remote system "10.30.171.177" 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-08-10T02:13:36.955826" elapsed="0.000425"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:36.957028" 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-08-10T02:13:36.956425" elapsed="0.000630"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:36.958027" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:36.958105" 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-08-10T02:13:36.957742" 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-08-10T02:13:36.958288" elapsed="0.000354"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:36.959498" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:37.294653" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:36 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:36.959166" elapsed="0.335722"/>
</kw>
<msg time="2026-08-10T02:13:37.294997" 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-08-10T02:13:36.958813" elapsed="0.336288"/>
</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-08-10T02:13:36.957325" elapsed="0.337916"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:37.295851" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1   tcp:10.30.170.209:6633'.</msg>
<msg time="2026-08-10T02:13:37.318556" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:37.318827" level="INFO">${stdout} = </msg>
<msg time="2026-08-10T02:13:37.318928" 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-08-10T02:13:37.295553" elapsed="0.023426"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:37.319419" elapsed="0.000502"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:37.321152" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:37.320471" elapsed="0.000777"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:37.321776" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:37.321463" elapsed="0.000423"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:37.321407" elapsed="0.000529"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:13:37.322292" elapsed="0.000093"/>
</return>
<status status="PASS" start="2026-08-10T02:13:37.322057" elapsed="0.000403"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:37.322023" elapsed="0.000492"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:37.322590" 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-08-10T02:13:37.329134" elapsed="0.000238"/>
</kw>
<msg time="2026-08-10T02:13:37.329434" 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-08-10T02:13:37.328289" elapsed="0.001229"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:37.329742" elapsed="0.000029"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:37.329965" elapsed="0.000027"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:13:37.323330" elapsed="0.006746"/>
</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-08-10T02:13:36.953841" elapsed="0.376363"/>
</kw>
<msg time="2026-08-10T02:13:37.330281" 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-08-10T02:13:36.953034" elapsed="0.377335"/>
</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-08-10T02:13:36.952233" elapsed="0.378255"/>
</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.209:6633 and OF version ${ofversion}.</doc>
<status status="PASS" start="2026-08-10T02:13:36.553797" elapsed="0.776773"/>
</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-08-10T02:13:37.343129" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:37.342838" elapsed="0.000349"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:37.342791" elapsed="0.000420"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:37.343500" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:37.343603" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:37.343376" elapsed="0.000253"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:37.344159" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.177" 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-08-10T02:13:37.343781" elapsed="0.000423"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:37.344756" 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-08-10T02:13:37.344374" elapsed="0.000408"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:37.345703" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:37.345781" 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-08-10T02:13:37.345408" elapsed="0.000396"/>
</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-08-10T02:13:37.345963" elapsed="0.000313"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:37.347140" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:37.683880" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:37 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:37.346828" elapsed="0.337175"/>
</kw>
<msg time="2026-08-10T02:13:37.684071" 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-08-10T02:13:37.346460" elapsed="0.337675"/>
</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-08-10T02:13:37.344994" elapsed="0.339242"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:37.684629" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:13:37.757850" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:37.758257" level="INFO">${stdout} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            ...</msg>
<msg time="2026-08-10T02:13:37.758416" 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-08-10T02:13:37.684434" elapsed="0.074044"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:37.758999" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:37.760986" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:37.760225" 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-08-10T02:13:37.761702" elapsed="0.000044"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:37.761290" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:37.761233" elapsed="0.000642"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:13:37.762259" elapsed="0.000103"/>
</return>
<status status="PASS" start="2026-08-10T02:13:37.761996" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:37.761961" elapsed="0.000536"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:37.762578" 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-08-10T02:13:37.768170" elapsed="0.000272"/>
</kw>
<msg time="2026-08-10T02:13:37.768517" 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-08-10T02:13:37.767455" elapsed="0.001155"/>
</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-08-10T02:13:37.768975" elapsed="0.000032"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:37.769204" 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-08-10T02:13:37.763439" elapsed="0.005891"/>
</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-08-10T02:13:37.342259" elapsed="0.427266"/>
</kw>
<msg time="2026-08-10T02:13:37.769612" 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-08-10T02:13:37.341683" elapsed="0.427997"/>
</kw>
<msg time="2026-08-10T02:13:37.769852" level="INFO">${output} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            ...</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-08-10T02:13:37.341092" elapsed="0.428807"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:37.770504" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209: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-08-10T02:13:37.770122" elapsed="0.000448"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:13:37.771362" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:13:37.771541" level="FAIL">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209: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-08-10T02:13:37.770781" elapsed="0.000883">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209: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-08-10T02:13:37.340696" elapsed="0.431102">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209: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-08-10T02:13:38.789891" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:38.789535" elapsed="0.000435"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:38.789506" elapsed="0.000495"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:38.790328" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:38.790472" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:38.790160" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:38.791044" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.177" 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-08-10T02:13:38.790654" elapsed="0.000436"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:38.791675" 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-08-10T02:13:38.791249" elapsed="0.000452"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:38.795537" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:38.795618" 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-08-10T02:13:38.795213" 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-08-10T02:13:38.795814" elapsed="0.000326"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:38.797112" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:39.178068" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:37 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:38.796689" elapsed="0.381484"/>
</kw>
<msg time="2026-08-10T02:13:39.178235" 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-08-10T02:13:38.796308" elapsed="0.382000"/>
</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-08-10T02:13:38.794816" elapsed="0.383607"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:39.178788" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:13:39.262147" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:39.262436" level="INFO">${stdout} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            ...</msg>
<msg time="2026-08-10T02:13:39.262543" 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-08-10T02:13:39.178608" elapsed="0.083986"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:39.262959" elapsed="0.000492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:39.264540" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:39.263866" elapsed="0.000767"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:39.265063" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:39.264793" elapsed="0.000380"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:39.264747" elapsed="0.000474"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:13:39.265613" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-08-10T02:13:39.265373" elapsed="0.000371"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:39.265304" elapsed="0.000495"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:39.265873" 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-08-10T02:13:39.272765" elapsed="0.000147"/>
</kw>
<msg time="2026-08-10T02:13:39.272955" 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-08-10T02:13:39.271629" elapsed="0.001386"/>
</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-08-10T02:13:39.273171" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:39.273328" elapsed="0.000041"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:13:39.266585" elapsed="0.006847"/>
</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-08-10T02:13:38.788967" elapsed="0.484554"/>
</kw>
<msg time="2026-08-10T02:13:39.273575" 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-08-10T02:13:38.788241" elapsed="0.485380"/>
</kw>
<msg time="2026-08-10T02:13:39.273732" level="INFO">${output} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            ...</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-08-10T02:13:38.787688" elapsed="0.486070"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:39.274169" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209: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-08-10T02:13:39.273916" elapsed="0.000299"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:13:39.274820" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-08-10T02:13:39.274933" level="FAIL">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209: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-08-10T02:13:39.274476" elapsed="0.000601">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209: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-08-10T02:13:38.787131" elapsed="0.488071">'b8b8817f-39c0-444d-88b6-8aa81a19a4d4\n    Bridge s1\n        Controller "tcp:10.30.170.209: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-08-10T02:13:40.293563" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:40.293178" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:40.293150" elapsed="0.000520"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:40.293988" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:40.294112" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:40.293829" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:40.294700" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.177" 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-08-10T02:13:40.294293" elapsed="0.000454"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:40.295308" level="INFO">${conn_id} = 74</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-08-10T02:13:40.294905" elapsed="0.000444"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:40.296592" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:40.296704" 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-08-10T02:13:40.296273" elapsed="0.000462"/>
</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-08-10T02:13:40.296930" elapsed="0.000346"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:40.298140" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:40.628187" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:39 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:40.297824" elapsed="0.330470"/>
</kw>
<msg time="2026-08-10T02:13:40.628384" 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-08-10T02:13:40.297465" elapsed="0.330994"/>
</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-08-10T02:13:40.295570" elapsed="0.332992"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:40.629013" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-08-10T02:13:40.652400" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-08-10T02:13:40.652653" level="INFO">${stdout} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
            is_connected: true
        fail_mode: secure
        Port s1-eth2
            Interface s1-et...</msg>
<msg time="2026-08-10T02:13:40.652754" 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-08-10T02:13:40.628764" elapsed="0.024040"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:13:40.653203" elapsed="0.000524"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:40.654785" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:13:40.654148" elapsed="0.000729"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:40.655315" elapsed="0.000071"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:13:40.655038" elapsed="0.000528"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:40.654991" 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-08-10T02:13:40.655990" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-08-10T02:13:40.655745" elapsed="0.000377"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:40.655710" elapsed="0.000465"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:13:40.656250" 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-08-10T02:13:40.662917" elapsed="0.000202"/>
</kw>
<msg time="2026-08-10T02:13:40.663178" 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-08-10T02:13:40.662097" elapsed="0.001164"/>
</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-08-10T02:13:40.663503" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:13:40.663724" elapsed="0.000027"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-08-10T02:13:40.657031" elapsed="0.006804"/>
</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-08-10T02:13:40.292549" elapsed="0.371410"/>
</kw>
<msg time="2026-08-10T02:13:40.664034" 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-08-10T02:13:40.291803" elapsed="0.372295"/>
</kw>
<msg time="2026-08-10T02:13:40.664253" level="INFO">${output} = b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209:6633"
            is_connected: true
        fail_mode: secure
        Port s1-eth2
            Interface s1-et...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:13:40.291224" elapsed="0.373066"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:40.664877" level="INFO">b8b8817f-39c0-444d-88b6-8aa81a19a4d4
    Bridge s1
        Controller "tcp:10.30.170.209: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-08-10T02:13:40.664532" elapsed="0.000432"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-08-10T02:13:40.665670" 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-08-10T02:13:40.665169" elapsed="0.000597"/>
</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-08-10T02:13:40.290669" elapsed="0.375185"/>
</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-08-10T02:13:37.330820" elapsed="3.335105"/>
</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-08-10T02:13:40.669775" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:13:40.669400" elapsed="0.000430"/>
</branch>
<status status="PASS" start="2026-08-10T02:13:40.669371" elapsed="0.000483"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:40.670140" level="INFO">index=62
host=10.30.171.177
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-08-10T02:13:40.670243" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.177
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-08-10T02:13:40.670016" elapsed="0.000254"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:13:40.670820" level="INFO">Attempting to execute command "sudo timeout --signal=KILL 20 ovsdb-client monitor Controller target,role" on remote system "10.30.171.177" 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-08-10T02:13:40.670439" elapsed="0.000428"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-08-10T02:13:40.671415" level="INFO">${conn_id} = 75</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-08-10T02:13:40.671021" elapsed="0.000420"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-10T02:13:40.672389" level="INFO">Length is 0.</msg>
<msg time="2026-08-10T02:13:40.672468" 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-08-10T02:13:40.672099" 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-08-10T02:13:40.672707" elapsed="0.000370"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-08-10T02:13:40.674007" level="INFO">Logging into '10.30.171.177:22' as 'jenkins'.</msg>
<msg time="2026-08-10T02:13:41.003740" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-186-generic x86_64)

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

 System information as of Mon Aug 10 02:12:44 UTC 2026

  System load:  0.04               Processes:             107
  Usage of /:   19.9% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.177
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

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


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


Last login: Mon Aug 10 02:13:40 2026 from 10.30.171.187
[?2004h[jenkins@releng-14419-806-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-08-10T02:13:40.673655" elapsed="0.330197"/>
</kw>
<msg time="2026-08-10T02:13:41.003920" 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-08-10T02:13:40.673253" elapsed="0.330732"/>
</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-08-10T02:13:40.671658" elapsed="0.332429"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-08-10T02:13:41.004542" level="INFO">Executing command 'sudo timeout --signal=KILL 20 ovsdb-client monitor Controller target,role'.</msg>
<msg time="2026-08-10T02:14:01.027377" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-08-10T02:14:01.027768" level="INFO">${stdout} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
019d415c-8c8f-40bf-b033-95c62ab85762 initial "tc...</msg>
<msg time="2026-08-10T02:14:01.027875" 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-08-10T02:13:41.004291" elapsed="20.023636"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:14:01.028445" elapsed="0.000564"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:14:01.030169" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:14:01.029499" elapsed="0.000766"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:14:01.030765" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-08-10T02:14:01.030467" elapsed="0.000403"/>
</branch>
<status status="PASS" start="2026-08-10T02:14:01.030418" elapsed="0.000504"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-08-10T02:14:01.031273" elapsed="0.000104"/>
</return>
<status status="PASS" start="2026-08-10T02:14:01.031040" elapsed="0.000414"/>
</branch>
<status status="PASS" start="2026-08-10T02:14:01.031006" elapsed="0.000502"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-08-10T02:14:01.031586" 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-08-10T02:14:01.037368" elapsed="0.000207"/>
</kw>
<msg time="2026-08-10T02:14:01.037637" 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-08-10T02:14:01.036587" elapsed="0.001137"/>
</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-08-10T02:14:01.037963" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-08-10T02:14:01.038189" 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-08-10T02:14:01.032285" elapsed="0.006022"/>
</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-08-10T02:13:40.668546" elapsed="20.369914"/>
</kw>
<msg time="2026-08-10T02:14:01.038537" 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-08-10T02:13:40.667469" elapsed="20.371133"/>
</kw>
<msg time="2026-08-10T02:14:01.038759" level="INFO">${output} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
019d415c-8c8f-40bf-b033-95c62ab85762 initial "tc...</msg>
<var>${output}</var>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>sudo timeout --signal=KILL ${timeout} ovsdb-client monitor Controller target,role</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-08-10T02:13:40.666688" elapsed="20.372108"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-10T02:14:01.039506" level="INFO">${output} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
019d415c-8c8f-40bf-b033-95c62ab85762 initial "tc...</msg>
<arg>${output}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-10T02:14:01.039027" elapsed="0.000620"/>
</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-08-10T02:14:01.039906" elapsed="0.000456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:14:01.040956" level="INFO">row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
019d415c-8c8f-40bf-b033-95c62ab85762 initial "tcp:10.30.170.209:6633" master</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:14:01.040621" elapsed="0.000400"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-08-10T02:14:01.041080" elapsed="0.000039"/>
</return>
<arg>20</arg>
<doc>Execute OvsVsctl List Controllers Command and check for master connection.</doc>
<status status="PASS" start="2026-08-10T02:13:40.666171" elapsed="20.375079"/>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-08-10T02:14:01.059039" level="INFO">GET Request : url=http://10.30.170.209: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=node01aqtjeu8h4p5q1b5bzf2gjpcta5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:14:01.060158" level="INFO">GET Response : url=http://10.30.170.209: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":50166,"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":"17","byte-count":"1342","duration":{"second":21,"nanosecond":114000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","active-flows":1,"packets-matched":"17"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-08-10T02:14:01.060688" 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-08-10T02:14:01.042029" elapsed="0.018719"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-10T02:14:01.066702" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:port-number":50166,"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":"17","byte-count":"1342","duration":{"second":21,"nanosecond":114000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","active-flows":1,"packets-matched":"17"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-08-10T02:13:59.613Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ce:cb:c8:b9:93:38","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":"24","received":"10"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":60,"nanosecond":123000000},"bytes":{"transmitted":"1986","received":"796"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f2:68:3a:73:da:4a","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":60,"nanosecond":117000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"22:82:19:e8:e5:1e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"23","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":60,"nanosecond":124000000},"bytes":{"transmitted":"1916","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.177","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-08-10T02:13:59.633Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-10T02:14:01.061177" elapsed="0.006099"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-08-10T02:14:01.070098" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-08-10T02:14:01.070180" 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-08-10T02:14:01.067507" elapsed="0.002698"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-08-10T02:14:01.070732" 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-08-10T02:14:01.070434" elapsed="0.000364"/>
</kw>
<arg>1</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-08-10T02:14:01.041584" elapsed="0.029274"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-08-10T02:14:01.072082" 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-08-10T02:14:01.071669" elapsed="0.000440"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-08-10T02:14:01.072329" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-08-10T02:14:01.072184" elapsed="0.000223"/>
</branch>
<status status="PASS" start="2026-08-10T02:14:01.072166" elapsed="0.000264"/>
</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-08-10T02:14:01.072605" elapsed="0.000021"/>
</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-08-10T02:14:01.072777" 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-08-10T02:14:01.072953" 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-08-10T02:14:01.073123" elapsed="0.000019"/>
</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-08-10T02:14:01.073285" 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-08-10T02:14:01.073462" 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-08-10T02:14:01.073622" 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-08-10T02:14:01.073884" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-10T02:14:01.073702" elapsed="0.000233"/>
</branch>
<status status="NOT RUN" start="2026-08-10T02:14:01.073686" elapsed="0.000271"/>
</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-08-10T02:14:01.071237" elapsed="0.002768"/>
</kw>
<doc>Restore original Connection To Controller And Check OVS Connection</doc>
<status status="PASS" start="2026-08-10T02:13:36.545068" elapsed="24.528982"/>
</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-08-10T02:14:01.081619" level="INFO">DELETE Request : url=http://10.30.170.209: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=node01aqtjeu8h4p5q1b5bzf2gjpcta5.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-08-10T02:14:01.082162" level="INFO">DELETE Response : url=http://10.30.170.209: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-08-10T02:14:01.082284" level="FAIL">HTTPError: 409 Client Error: Conflict for url: http://10.30.170.209: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-08-10T02:14:01.075162" elapsed="0.007540">HTTPError: 409 Client Error: Conflict for url: http://10.30.170.209: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-08-10T02:14:01.074819" elapsed="0.007950"/>
</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-08-10T02:14:01.088059" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-08-10T02:14:01.087749" elapsed="0.000558"/>
</branch>
<status status="PASS" start="2026-08-10T02:14:01.087724" elapsed="0.000641"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-08-10T02:14:01.090958" 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-08-10T02:14:01.088562" elapsed="0.002472"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-08-10T02:14:01.191403" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 61.775 seconds
[?2004h[jenkins@releng-14419-806-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-08-10T02:14:01.091248" elapsed="0.100268"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-08-10T02:14:01.191673" elapsed="0.000148"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-08-10T02:14:01.087440" elapsed="0.104434"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-08-10T02:14:01.192090" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-10T02:14:01.192019" elapsed="0.000135"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-08-10T02:14:01.074599" elapsed="0.117606"/>
</kw>
<doc>Test suite for Split connection bug.</doc>
<status status="PASS" start="2026-08-10T02:12:56.959241" elapsed="64.232993"/>
</suite>
<status status="PASS" start="2026-08-10T02:06:37.457527" elapsed="443.736611"/>
</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>
